加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

一文理解微服务中的模式和反模式

发布时间:2021-03-12 17:49:22 所属栏目:外闻 来源:互联网
导读:两种方式各有优缺点: 独立数据库使得各个服务完全解耦合,并且可以根据需要选用不同种类的数据库,但是没有办法或者很难在服务之间共享数据 共享数据库能简化维护和技术栈,但是数据库成为所有服务的依赖,系统更多的耦合,带来了不灵活,没有办法根据业务

两种方式各有优缺点:

  • 独立数据库使得各个服务完全解耦合,并且可以根据需要选用不同种类的数据库,但是没有办法或者很难在服务之间共享数据
  • 共享数据库能简化维护和技术栈,但是数据库成为所有服务的依赖,系统更多的耦合,带来了不灵活,没有办法根据业务需要选择不同的数据库种类。

微服务中的反模式

相对于《设计模式》,《反模式》一书可能知道的相对少一点,其实同样的道理,反模式归纳总结了一些常见的容易犯的设计问题,那么,微服务中有哪些反模式呢?

聚合混乱

软件设计的一个主要思想“高内聚,低耦合”同样适用于微服务,随着系统的发展,应该避免某一个服务变的一场庞大,或者服务之间不必要的过多依赖。

不认真对待自动化

持续集成和交付和微服务相辅相成,自动化的测试,集成,交付和部署是微服务成败的关键。一个自动化程度不高的微服务是很难成功的。

层级的软件架构

在设计微服务的时候,应该尽可能避免分层的架构,服务之间更多应该是流式调用。例如为所有的服务提供一个数据接入层的数据服务,似乎不是一个好的选择,因为这样的化就使得所有的服务依赖该数据服务。微服务更多应该基于业务来设计,每个服务应该自包含。

以下的架构虽然是一种层级架构,但也是可以采用的,条件是不同的服务不应该共享数据。

 

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读