• 近半个世纪以来,ACID事务(满足原子性,一致性,隔离性和持久性的特性)一直是确保数据存储系统一致性的首选。众所周知的原子性属性:在发生故障时,可确保事务写入的全部或全部都不会; 隔离防止同时运行的事务干扰; 和持久性确保在发生故障时不会丢失已提交事务所做的写入。虽然事
  • 分布式系统中的状态复制协调非常困难。在一系列联网过程中如何共享状态数据信息并彼此保持同步?最近,RabbitMQ团队发布了一种新型的队列,该队列使用 icon
  • 由于许多新应用程序是作为微服务系统构建的,因此双重写入已成为一个普遍的问题。它们是导致数据不一致的最常见原因之一。更糟的是,许多开发人员甚至都不知道双重写入是什么。 什么是双重写入?双重写入描述了您在两个个 icon
  • 分布式系统给程序带来了特殊的挑战。它们通常要求我们拥有多个数据副本,这些副本需要保持同步。但是我们不能依靠处理节点可靠地工作,并且网络延迟很容易导致不一致。尽管如此,许多组织仍依赖一系列核心分布式软件来处理数据存储,消息传递,系统管理和计算功能。这些系统面临共同的问题,可以通过类似的解决方案 icon
  • OGG:Oracle GoldenGate是一个产品,它允许我们为数据库中发生的每一项活动(Kafka)生成消息 - 更新,插入,删除 - 我们将全部获取。Debezium是一个类似的产品,可以与MySQL以及许多其他数据存储一起使用。衍生的事件溯源实际上是从Oracle等数据库中获 icon
  • Redis已经不是简单的分布式缓存,迈向分布式数据库系统,Red Labs最近发布了RedisRaft开放源代码项目,目标帮助开发多个Redis icon
  • PigPaxos的中心思想是使跟随者服务器节点与领导者服务器节点的通讯脱钩。PigPaxos修改了通信流程,使用基于中继的通信流程代替Paxos中领导者和跟随者之间的直接通信。PigPaxos在每个通信回合中从跟随者群集中随机选择中继,以 icon
  • 计算机科学:排序算法,排序算法,更多排序算法...每个程序员:是的,是的,我们知道!Facebook:这是您在31、49、26、29和55分钟前发出的通知。(为什么不按时间排序呢?) 众说纷纭:这是因为分布式系统很困 icon
  • 断路器中的回退是通过一些预先配置的响应来替换发生的故障,从而使故障的范围受到限制并且对最终用户隐藏。然而,在现实生活中,简单的回退往往过于简单,我建议采用更强大的方法来处理故障,补偿发生的故障。 什么是断路器? icon
  • 连贯性coherence确保可以按顺序看到写入内容(带有业务语义);一致性consistency确保可以在不同位置按有意义的顺序查看写入的内容(无关乎上下文或语义)。分布式算法CRDT不保证连贯性coherence, icon
  • ScheduledThreadPoolExecutor 容易出现无限的时钟漂移最近,我意识到 icon
  • 将数据存储在实时数据流中一直是一个挑战。解决方案取决于您的用例具体情况。如果要存储数据以进行每日或每月分析,则可以使用分布式文件系统并在其上运行Hive或 icon
  • 无冲突复制数据类型(CRDT)是可用于支持分布式系统中高可用性和可伸缩状态共享的数据结构。CRDT状态被复制到系统中的每个节点。每个节点都可以读取和更新CRDT,而无需与其他节点进行任何协调。如果两个或多个节点同时修改CRDT,则修改可以合并在一起,并且CRDT保证最终所有节点将就该CRDT icon
  • 是什么阻止您将Kafka Streams用作构建应用程序的数据层?毕竟,它具有快速的嵌入式RocksDB存储,可为您处理冗余,具有高度可伸缩性并提供正好一次精确的语义。推荐博文: icon
  • 要了解happen before,需要首先了解如果多个线程访问同一个变量会发生什么问题?尤其是当一个线程写入该变量,而一个线程同时从该变量读取时。例如,假设我们有以下由线程T1执行的代码(请注意,整数变量y在x之前初始化): icon
  • Jangda等人由于在“无服务器计算的形式基础”方面的工作而在今年获得了OOPSLA的杰出论文奖。本文的中心是他们观察到无服务器执行环境具有许多独特的属性(例如执行环境的热启动/重用),这会使构建正确的应用程序变得更加困难。它们显示了无服务器功能可以安全地忽略这些特性的条件,因此变得更容易推 icon
  • 在Nordstrom,我们一直在探索一种特定类型的近实时数据流,称为事件溯源/事件采购,通过结合开源项目和过去四年运维生产的功能。在此过程中,我们学到了很多东西,并希望分享我们所看到的一些机会。 什么是事件溯源,我为什么要关心?</ icon