反应性微服务示例 - 通用&真实(不抽象)

时间:2016-06-17 19:30:04

标签: microservices

每个企业都在寻找客户,制造产品,向客户销售产品等。

我参加了关于反应式微服务的讲座并且知道它们是抽象形式的,但是NOBODY(我的意思是NOBODY)似乎能够给我一个关于软件如何的真实生活示例通过使用反应式微服务,可以更好地设计今天创建的数据。

例如,为客户执行Thing1的Web服务。它有三个主要组件,SubThing1,SubThing2,SubThing3。 SubThing2有时可能会占用更多的内存和资源,因此最好将其分解为反应式微服务,以便在需要时可以扩展和缩小SubThing2。

你能给我一个实时工作实例的Thing1,SubThing1,SubThing2和SubThing3。

1 个答案:

答案 0 :(得分:0)

如果有人想知道 Reactive Microservice 是什么,请参阅下文。

来自JonasBonér的“Reactive Microservices Architecture”一书,O'Reilly出版社:

  

什么是反应性微服务?

     

采用基于微服务的关键原则之一   架构是分而治之:系统的分解   分离和隔离的子系统通过良好定义的通信   协议

     

隔离是弹性和弹性的先决条件,需要   服务之间的异步通信边界解耦   他们在:

     
      
  • 时间 - 允许并发
  •   
  • 空间 - 允许分配和移动 - 围绕
  • 移动服务的能力   
     

采用微服务时,消除共享也很重要   可变状态 1 ,从而最大限度地减少协调,   争用和一致性成本,如通用可伸缩性中所定义的   法律 2 通过拥抱Share-Nothing Architecture

     

1 有关a引起的问题的深刻讨论   可变状态,参见约翰巴克斯的经典图灵奖演讲“Can Programming Be Liberated from the von Neumann Style?

     

2 Neil Gunter的Universal Scalability Law是一个   理解争用和影响的重要工具   并发和分布式系统中的协调。

使用这个定义,Thing将是一个由反应式微服务组成的系统,而Subthing1 ..等将是单独的反应式微服务。

  

你能给我一个实时的工作实例Thing1,   SubThing1,SubThing2和SubThing3。

怎么样:

  • Thing =亚马逊网站
  • SubThing1 - 定价服务
  • SubThing2 - 产品服务
  • SubThing3 - 股票服务
  • 等...