• 本文介绍如何在微服务架构通过事件编排实现业务流程的无限灵活实现,克服了以往SOA中ESB总线的中央治理的局限。 关键词:1.在微服务架构中,遇到长时间运行并跨越多个微服务边界调用的流程并不少见。 2.具有
  • 本文是来自Kafka的创始人Jay Kreps的一篇博文,回答了世面上怀疑Kafka是否支持正好一次(Exactly-once)的消息传递,从而说明了Kafka能支持分布式事务,保证微服务事务的完整性,关键是将偏移量和你要保存的状态通过JDBC事务或者JTA事务保存到数据库,失败恢复时从这个偏移量开
  • 这是一篇讲解微服务系统在扩展性伸缩性方面的演进文章,Jonas Boner认为目前普通的微服务最终将演进为事件驱动的响应式微系统架构(Reactive Microsystem), 英文PPT文档见: icon
  • 基于DDD的EventSroucing事件溯源和CQRS的项目正在迅速发展,这里介绍两个开源项目:flowing-retail和 icon
  • 通过事件进行应用程序的设计是自20世纪80年代后期以来的一种实践。我们可以在前端或后端的任何地方使用事件。当按下按钮时,某些数据发生更改或执行某个后端动作。 但是事件究竟是什么呢?我们什么时候应该用它呢?缺点是什么? icon
  • 本文比较了微服务和模块化整体架构(modularized monolith )的区别。现在大家一股脑从整体单片monolith迁移到微服务,但是这种转变真的适合你公司吗?整体单片monolith确实有很多问题,但是模块化(modularized monolith)作为微服务竞争对手是否被忽视了?</ icon
  • 本文主要谈论了微服务系统之间通讯RPC同步和异步队列的不同,RPC同步速度快但不可靠;异步队列速度慢一点但可靠。本文也解释了其背后原因,比如缺乏统一时钟,也就是著名的拜占庭将军问题,认识这点后,会更加意识到从单体巨石系统monolith迁移到微服务最困难的是缺乏事务机制。如果有一些与钱有关的系统比如 icon
  • 谈论微服务架构时,我们认识到:团队的组织方式与沟通结构对技术系统的设计有着很大影响。当我们实际开始实现这些架构时,会发现已经处于分布式系统中的较深位置。我们还发现,已经有许多技术和方法大大促进这一技术演变。因此,我们可能处在一个新的进化循环开始,这个新的进化就是以Lambda /函数作为服务风格。当 icon
  • 微服务越来越受欢迎,每个月都有更多的库包和解决方案来支持微服务的开发测试,很多Java开发人员虽然听说过微服务,但是真正采用还是有犹豫的:“我知道,微服务是非常棒的,微服务器更容易维护和进一步开发,但我们没有建立一个良好的基于​​微服务架构的资源。” 许多 icon
  • 本文主要讨论了两种数据库分片方式,基于业务的自然分表法和基于微服务的分片法。其实微服务的切分依据还是要首先找出业务数据的DDD聚合才能切分。 当数据库数据量很小时,很多问题可以通过硬件进行扩展。然而,随着数据表数量的增长,就需要考虑其他扩展数据库的方法了。 icon
  • 本文您推荐采取三个领域驱动的步骤,能使您的代码库变得更易于管理 毫不讳言,在单体(整体/铁板一块monolith)架构中编写代码是容易的。我们可以随时直接查询数据库,在应用程序的其他部分调用我们想要的任何功能,而不必考虑整体架构组织,因为我们正在向现有架构 icon
  • 微服务是一个很热门的话题,现在已经有数百个各种形式的会议,网络研讨会、流媒体和网络文章到处是。因此,你会以为每个人都已经意识到微服务提供的好处以及风险。然而,许多公司在没有事先准备的情况下一下跳入微服务这一趋势。实际上导致了很多失败。 一个智者曾经说过,“ icon
  • 今天,IBM和Google宣布推出Istio,这是一种开放技术,提供了一种连接和管理不同微服务器平台的统一方式。 Istio是IBM,Google和Lyft联合合作的结果,Istio能够支持微服务之间的流量管理、访问策略实施和数据的聚合。如果你的微服务是建 icon
  • 最近,IBM,Google和Lyft宣布推出Istio,这是一个开放源代码平台,帮助管理微服务分布式应用程序。Istio背后的关键原则之一是在微服务基础架构上提供统一的可观察性,而不需要特殊的工具。 模块化的优点在软件工程中是众所周知的; 然而,包含大量微 icon
  • Netflix的订阅用户越来越多--与Node.js互动对话的时间接近8500万,产生了许多具有挑战性的规模问题。Yunong Xiao,Netflix首席软件工程师介绍了这些挑战,并解释公司如何从内容提供商发展为一个不断增长的全球平台,该平台支持所有现代浏览器,游戏机,智能电视甚至更多。他还着眼于 icon
  • JTA是Java Transaction API简称 ,即Java事务管理器,主要管理本地事务。本地事务是只同一个数据库源中,多次数据库连接之间的事务,使得这多个数据表操作遵循ACID。 如果想让JTA管理多台数据库操作的分布式事务,需要XA支持,Open icon
  • Phil Calcado于2017年5月在布达佩斯的Craft Conf发表了关于Microservices几个先决条件的演讲,被分布式领域的其他作品纷纷引用,在本文中他详细扩展论述了这些微服务的先决条件。下面是他的原文: 2017年5月,我在布达 icon
  • 对于微服务架构,每个服务都有独自的数据支持,同时每个服务又会有多个实例在不同的容器中运行,多个相同的实例需要共享业务数据状态,使用jdonframework有什么方法可以实现呢? icon