一、事务应用 1、事务定义 ? 用于完成一件事件的独立单元 例如:我们在数据库操作的时候,对数据库的一次更新可以认为是一个事务,业务中银行转账也可以是一个事务(余额的变更) 2、事务的四个特性 ? a、原子性: 一个事务在执行过程中, 要么全部执行,要么全部不执行,不可能停滞了中途,及时中途失败了, ...
分类:
其他好文 时间:
2020-12-03 11:42:47
阅读次数:
3
并发编程三要素 原子性: 一个不可再被分割的颗粒。原子性指的是一个或多个操作要么全部执行成功要么全部执行失败。 有序性: 程序执行的顺序按照代码的先后顺序执行。(处理器可能会对指令进行重排序) 可见性: 一个县城对共享变量的修改,另一个线程能够立刻看到。 一、原子性 线程切换会带来原子性的问题 in ...
分类:
其他好文 时间:
2020-12-02 12:01:41
阅读次数:
4
事务是作为单个逻辑工作单元执行的一系列操作,一个逻辑工作单元必须有四个属性,称为原子性、一致性、隔离性和持久性 (ACID) 属性,只有这样才能成为一个事务 。JDBC处理事务有如下操作: conn.setAutoComit(false);设置提交方式为手工提交conn.commit()提交事务 c ...
分类:
数据库 时间:
2020-11-26 14:27:02
阅读次数:
9
【原创】Java并发编程系列04|Java内存模型详解收录于话题#进阶架构师|并发编程专题12个点击上方“java进阶架构师”,选择右上角“置顶公众号”20大进阶架构专题每日送达思维导图写在前面前面讲解了并发编程的三大核心问题:原子性、可见性、有序性。文章见:【原创】Java并发编程系列03|重排序-可见性和有序性问题根源那么,作为从最开始就支持并发的语言,Java是如何解决这些核心问题的呢?1.
分类:
编程语言 时间:
2020-11-25 12:13:58
阅读次数:
5
Java多线程 线程池的原理,为什么要创建线程池? 线程的生命周期,什么时候会出现僵死进程; 什么实现线程安全,如何实现线程安全; 创建线程池有哪几个核心参数?如何合理配置线程池的大小? synchronized、volatile区别、synchronized锁粒度、模拟死锁场景、原子性与可见性; ...
分类:
其他好文 时间:
2020-11-21 11:48:56
阅读次数:
4
漫画:什么是分布式锁?点击上方“程序员小灰”,选择“置顶公众号”有趣有内涵的文章第一时间送达!—————第二天—————————————————分布式锁的实现有哪些?1.Memcached分布式锁利用Memcached的add命令。此命令是原子性操作,只有在key不存在的情况下,才能add成功,也就意味着线程得到了锁。2.Redis分布式锁和Memcached的方式类似,利用Redis的setnx
分类:
其他好文 时间:
2020-11-20 11:22:56
阅读次数:
2
上一篇《分布式事务,原来可以这么玩?》引起了不少讨论,后续准备开一个新系列,讲一讲分布式的东西,今天就从相对容易理解的“两阶段提交”谈起。画外音:给自己定了一个目标,用通俗的语言把Paxos讲懂。分布式事务为什么难?在分布式环境下,每个节点都可以知晓自己操作的成功或者失败,却无法知道其他节点操作的成功或失败。当一个分布式事务跨多个节点时,保持事务的原子性与一致性,是非常困难的。什么是两阶段提交?二
分类:
其他好文 时间:
2020-11-17 12:11:27
阅读次数:
6
atomic是最轻量级的锁,在一些场景下直接使用atomic包还是很有效的。下面内容摘秒自《GO并发编程实战》—— 原子操作: CAS操作的优势是,可以在不形成临界区和创建互斥量的情况下完成并发安全的值替换操作。这可以大大的减少同步对程序性能的损耗。 当然,CAS操作也有劣势。在被操作值被频繁变更的 ...
分类:
编程语言 时间:
2020-11-16 13:16:59
阅读次数:
8
理会CAS和CAS: 有时候面试官面试问你的时候,会问,谈谈你对CAS的理解,这时应该有很多人,就会比较懵,当然,我也会比较懵,当然我和很多人的懵不同,很多人可能,并不知道CAS是一个什么东西,而在我看来我是不知道他问的是那个CAS 我一般会问面试官,问他问的CAS是"原子操作",还是"单点登录" ...
分类:
其他好文 时间:
2020-11-11 16:48:25
阅读次数:
23
2PC,是分布式事务的一种常见实践。分布式事务为什么难?在分布式环境下,每个节点都可以知晓自己操作的成功或者失败,却无法知道其他节点操作的成功或失败。当一个分布式事务跨多个节点时,保持事务的原子性与一致性,是非常困难的。什么是两阶段提交?二阶段提交2PC(TwophaseCommit)是一种,在分布式环境下,所有节点进行事务提交,保持一致性的算法。它通过引入一个协调者(Coordinator)来统
分类:
其他好文 时间:
2020-11-08 17:29:38
阅读次数:
18