首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向外部系统发送更新的设计模式

向外部系统发送更新的设计模式
EN

Stack Overflow用户
提问于 2012-07-20 07:52:34
回答 2查看 1.1K关注 0票数 1

我目前正致力于重构一个应用程序。这是一家租赁公司的申请。该应用程序通过web服务与外部系统通信。状态中的某些更改或某些事件需要调用外部系统。我们有两种类型的电话:

  • 同步--例如,当我将对象添加到租赁应用程序时,对象的数量将从外部系统中获取(我等待响应)。
  • 异步--当我更改应用程序上的数据时,更改也会发送到外部系统(消息存储在我们的自定义队列中,并且不需要外部系统的响应)

应用程序的设计没有为外部系统的数量增加做好准备(在每个版本中,我们至少添加了一个系统)。我们有一个层(逻辑)处理所有的业务逻辑,并与外部系统进行通信(包括构建请求、验证请求、发送消息、验证响应、处理响应)。

我想把沟通部分和商务逻辑部分分开。在这种情况下,什么样的设计模式是好的?我读过设计模式@ sourcemaking.com,也读过企业应用体系结构模式目录@ Martin Fowler's,但是要么我无法使用,要么我看不出我可以使用它的方式(很可能是后面的:-)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-20 08:08:05

六角形建筑!:) - http://alistair.cockburn.us/Hexagonal+architecture

这是一种将业务逻辑与应用程序接收事件并将事件发送到外部世界的方式分开的好方法。

六角形架构模式可能有点过高,所以我通常建议在此之前阅读依赖反演原理,以了解模型应该如何公开后来由适配器实现的接口。

票数 1
EN

Stack Overflow用户

发布于 2012-07-20 08:52:16

我建议您尝试使用中介模式,...i从您的参考urls中提取这一点。模式/中介 --我认为这可以很容易地解决意大利面代码的问题,因为太多的通信逻辑与biz逻辑混合在一起。

请告诉我这是否有帮助:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11575101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档