Java将增加虚拟线程,挑战Go协程
虚拟线程是java.lang.Thread的用户模式实现,它不会阻塞操作系统线程,能够实现接近最佳的硬件利用率。虚拟线程允许高水平的并发,以及高吞吐量,同时程序仍然与Java平台和工具的基于线程的设计相协调。虚拟线程对于平台线程来说,就像虚拟内存对于物理RAM一样:一种通过自动映射到底层物理资源而提 ...
数据库事务简介
构成单一逻辑工作单元的操作集合称作事务(transaction)。即使有故障,数据库系统也必须保证事务的正确执行——要么执行整个事务,要么属于该事务的操作一个也不执行。以资金转账为例,应该保证支票账户支出金额的操作和储蓄账户的存入金额的操作在同一个逻辑工作单元内完成。简言之,事务是访问并可能更新各种 ...
你的Spring事务为什么不会自动回滚
Spring事务回滚机制是这样的:当所拦截的方法有指定异常抛出,事务才会自动进行回滚!
Spring Boot中的事务管理
我们在开发企业应用时,对于业务人员的一个操作实际是对数据读写的多步操作的结合。由于数据操作在顺序执行的过程中,任何一步操作都有可能发生异常,异常会导致后续操作无法完成,此时由于业务逻辑并未正确的完成,之前成功操作数据的并不可靠,需要在这种情况下进行回退。事务的作用就是为了保证用户的每一个操作都是可靠 ...
域名解析—— A 记录、CNAME 和 URL 转发区别
我们在做域名解析时,尤其是很多虚拟主机,大都会使用到 CNAME 解析,独立主机、VPS 则用 A 记录较多,而 URL 转发则会在更换域名时用到,从设置效果来看,都是“解析”到一个“其它” URL 地址,而实际上它们之间还是有些区别的,尤其是 URL 转发和其它两个之间区别很大的。
处理一份内心煎熬的工作有两种方法——只有一种是正确的
你知道他们说什么。假如你有个工作,意味着你只是破产了。你在用时间换钱,你在为别人工作。你读过的博客告诉你要辞职,创业才是未来的潮流。社会把工作变成了敌人。我们抱怨我们的工作,指责我们的工作是问题所在,并且迫切希望摆脱工作,以减轻我们的焦虑。我有个消息给你,你的工作不是问题...你才是。
动态规划入门
动态规划(dynamic programming)与分治方法相似,都是通过组合子问题的解来求解原问题(在这里,“programming”指的是一种表格法,并非编写计算机程序)。分治方法将问题划分为互不相交的子问题,递归地求解子问题,再将它们的解组合起来,求出原问题的解。动态规划应用于子问题重叠的情况 ...
MYSQL having实例及与where的区别
MySQL的HAVING子句在SELECT语句中是用来为某一组行或聚合指定过滤条件。MySQL的HAVING子句通常与GROUP BY子句一起使用。当它在GROUP BY子句中使用时,我们可以应用它在GROUP BY子句之后来指定过滤的条件。如果省略了GROUP BY子句,HAVING子句行为就像W ...
Zookeeper面试题总结
客户端如何正确处理CONNECTIONLOSS(连接断开) 和 SESSIONEXPIRED(Session 过期)两类连接异常?一个客户端修改了某个节点的数据,其他客户端能够马上获取到这个最新数据吗?ZooKeeper是否支持动态进行机器扩容?如果目前不支持,那么要如何扩容呢?
Flume面试题整理
Flume使用场景:线上数据一般主要是落地(存储到磁盘)或者通过socket传输给另外一个系统,这种情况下,你很难推动线上应用或服务去修改接口,实现直接向kafka里写数据,这时候你可能就需要flume这样的系统帮你去做传输。

© 2016 - 2022 chengxuzhixin.com All Rights Reserved.

浙ICP备2021034854号-1    浙公网安备 33011002016107号