Architecture 云铸造多工艺

Architecture 云铸造多工艺,architecture,cloud-foundry,Architecture,Cloud Foundry,我正在为CloudFoundry设计一个应用程序 将应用程序在其服务“接缝”处拆分为不同的进程(即每个服务在一个(可能多个)不同的进程上运行)是最佳做法吗 如果是这样,那么在这些流程之间进行沟通的最佳方式是什么?通过MQ服务删除?这对特定服务的升级(可能破坏JavaAPI)有何影响 如果不是,这是否意味着我应该为每个DEA运行所有服务?开销会是灾难性的吗?我对Java不是很有权威,但是是的,某种消息队列非常适合在应用程序的不同实例(例如RabbitMQ或Resque)之间进行通信 我不确定你的上

我正在为CloudFoundry设计一个应用程序

将应用程序在其服务“接缝”处拆分为不同的进程(即每个服务在一个(可能多个)不同的进程上运行)是最佳做法吗

如果是这样,那么在这些流程之间进行沟通的最佳方式是什么?通过MQ服务删除?这对特定服务的升级(可能破坏JavaAPI)有何影响


如果不是,这是否意味着我应该为每个DEA运行所有服务?开销会是灾难性的吗?

我对Java不是很有权威,但是是的,某种消息队列非常适合在应用程序的不同实例(例如RabbitMQ或Resque)之间进行通信


我不确定你的上一句话是什么意思,DEA负责运行应用程序的实例,它们对服务的运行方式没有任何影响。

你可能会发现Cloud Foundry开发人员的一位倡导者提供的这副牌很有用-

正如Dan提到的,RabbitMQ显然是解决实例和应用程序部分之间通信需求的解决方案,并且作为Cloud Foundry服务堆栈的一部分“免费”提供。这并不意味着其他协议永远不合适,但消息传递层之类的东西可以通过更简单地实现横向扩展来提高可伸缩性