收录了 内存一致性 频道下的 50 篇内容
Java线程之间的通信对程序员完全透明,内存可见性问题很容易困扰Java程序员,本文试图揭开Java内存模型神秘的面纱。本文大致分三部分:重排序与顺序一致性;三个同步原语(lock,volatile,final)的内存语义,重排序规则及在处理器中的实现;Java内存模型的设计目标,及其与处理器内存模型和顺序一致性内存模型的关系。
本文分享作者对 JVM GC 的理解。
垃圾回收是一个很复杂的问题,而且相当复杂,一大堆计算机科学家已经为此研究了数十年。如果有任何所谓的突破性进展,一定要谨慎对待。
本文介绍Linux内核的发展史。
计算机的演进就是一部在挖坑和填坑之间反复横跳的发展史。对这一点的理解会随着本文的后续讲述逐渐加深。比如高速缓存Cache很好地解决了CPU与内存的速度矛盾,但是也为计算机系统带来了更高的复杂度。
本篇将深入多线程并发执行问题的根源。总线的工作机制,顺序一致性模型以及JMM在性能与一致性上的折衷。通过这些明确问题产生的原因。在下篇文章中将介绍volatile、synchronized、final域的内存语义,来看它们是怎样解决这些问题的,以及各自的适用场景。
Java线程之间的通信对程序员完全透明,内存可见性问题很容易困扰Java程序员,本文试图揭开Java内存模型神秘的面纱。本文大致分三部分:重排序与顺序一致性;三个同步原语(lock,volatile,final)的内存语义,重排序规则及在处理器中的实现;Java内存模型的设计目标,及其与处理器内存模型和顺序一致性内存模型的关系。
在不久前于德国柏林举办的microXchg 2016大会上,Uwe Friedrichsen举办了一场名为“探讨实际应用中的一致性”的演讲,对该主题进行了深入的探究。Friedrichsen在演讲中引用了多篇学术论文中的内容,探讨了ACID与BASE的比较。他相信,众多开发者或许没有仍没有完全理解典型的SQL数据库在一致性方面的保证,也不了解一致性对于设计微服务系统的影响。
本文介绍蚂蚁金服开源的具有承载海量服务注册和订阅能力的、高可用的服务注册中心SOFARegistry 。
在专注于大数据、NoSQL和高扩展性的软件工程方面报道的博客“Highly Scalable Blog”中报道了一篇关于NoSQL数据库中的分布式算法的文章。在这篇文章里,作者从数据一致性、数据布局、系统协调三个方面以及分布式相关策略(数据复制策略、数据恢复策略、数据分布策略、集群领导选举算法等)对NoSQL数据库的分布式特点进行了一系列系统化的描述。
当问到 Java 内存模型的时候,一定要注意,Java 内存模型(Java Memory Model,JMM)它和 JVM 内存布局(JVM 运行时数据区域)是不一样的,它们是两个完全不同的概念。
如今使用的几乎所有软件都是分布式系统的一部分,手机上的应用程序与托管在云中的服务一起工作,托管服务本身就是大规模的分布式系统,通常运行在遍布全球的机器上,大数据系统和大规模数据库分布在许多机器上,大多数科学计算和机器学习系统在多个处理器上并
当问到 Java 内存模型的时候,一定要注意,Java 内存模型(Java Memory Model,JMM)它和 JVM 内存布局(JVM 运行时数据区域)是不一样的,它们是两个完全不同的概念。
当从一个单体系统转向微服务架构时,处理分布式系统带来的复杂性是一个挑战。事务处理是其中的首要核心问题。在一个 Web 应用程序中使用本地事务完成的典型数据库事务,现在是一个复杂的分布式事务问题。在本文中,我们将讨论造成这种情况的原因、可能的解决方案以及使用 MSA 开发安全事务性软件系统的最佳实践。
并发编程基础原理,个人理解,如有错误请指正。推荐书籍《Java并发编程的艺术》
本文介绍蚂蚁金服自主研发的金融级分布式架构——SOFARegistry。