微服务之间的最佳调用方式!| CSDN 博文精选(16)
内部微服务设计
这种设计表面上看起来是一个单体程序,它只有一个源代码存储仓库,一个数据库,一个部署,但在程序内部可以按照微服务的思想来进行设计。它可以分成多个模块,每个模块是一个微服务,可以由不同的团队管理。
用这张图做例子。这个图里的每个圆角方块大致是一个微服务,但我们可以把它作为一个单体程序来设计,内部有五个微服务。
每个模块都有自己的数据库表,它们都在一个数据库中,但模块之间不能跨数据库访问(不要建立模块之间数据库表的外键)。
“User”(在Conference Management模块中)是一个共享的类,但在不同的模块中的名字不同,含义和用法也不同,成员也不一样(例如,在“Customer Service”里叫“Customer”)。
DDD(Domain-Driven Design)建议不要共享这个类,而是在每一个有界上下文(模块)中都建一个新类,并拥有新的名字。
推荐阅读
- 客服|自购增值服务不自知?手机被恶意扣费,联通公司还要套路多久?
- 腾讯|LPL年度最佳选手,同队最多三人,选谁?
- edg战队|年度最佳阵容评选,EDG不可能全员上榜?圣枪哥恐将成为牺牲位
- 永劫无间|官宣!《永劫无间》活动期间打7折!萌新入坑最佳时机!
- 我的世界|我的世界:6个“友尽”的小技巧,不要轻易在好友的服务器尝试!
- ag战队|魔兽TBC:免费转服即将开放,四类服务器现状分析,玩家把握机会
- viper|最佳外援是VIPER,新任FMVP坐不住了?本土选手机制了解一下
- 剑网3|剑网三玩家开挂,出生装备服务器第一!开局淘汰95个对手,离大谱
- 任天堂|免费“大作”会有吗?任天堂商业报告提到将改善Switch会员服务
- 泰拉瑞亚|泰拉瑞亚:克鲁苏之眼之间的战斗,“地牢守卫”才是威胁!