14

你问我答:现有的应用有必要做微服务改造吗?

 4 years ago
source link: http://dockone.io/article/10693
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

BoCloud博云微信公众号【你问我答】小栏目,将收集和整理企业在IT建设所遇到的问题与难题,由博云产品与技术团队进行针对性回答,每周五通过【你问我答】栏目进行发布,希望能为企业IT建设提供思路与方法。无论您是哪个行业的IT建设者,如果您有在容器云平台建设、微服务架构转型、DevOps平台建设、多云管理平台建设等技术方面所遇到的问题,欢迎您直接评论留言提问。

以下是本周问题精选:

网友1:现有的应用不是微服架构,有必要做改造吗?

博云产品团队:其实使用微服务架构还是使用原本的单体架构,都取决于需求,那么问题就是我们目前是什么样的需求。需要微服务架构的,一般面临以下几个需求:

更新迭代太快,而部署麻烦,每次都要花费很长时间,经常影响业务。

公司的应用有几十个,重复的模块很多,也无法统一管理,未来还有扩展的需求。那就不如趁早转微服务架构,另外需要一套服务治理平台。

应用中某模块使用频繁,并发率很高,或有高峰期,经常需要资源的扩容缩容,单体应用做集群部署勉强能满足,但运维成本翻倍上升,且可用性下降。

网友2:微服务和容器之间是什么关系?

博云产品团队:刚接触容器的人,可以将容器与虚拟机类比来看,那么微服务是部署在容器中,或虚拟机中,或物理服务器中,都是可以的。

但是容器有其独特的优势,快速启停,独立进程等,可以弥补很多的微服务运维上的缺点,所以两者可以说是黄金搭档。

但是两者本身没有依赖性,都是独立的东西,只是两者的理念结合,会更加完美。

网友3:微服务框架部署时的业务连续性如何考虑?

近年金融行业,尤其是银行业监管越来越严格,对业务连续性要求的更高,银行系统对于由传统架构迁移至微服务有较迫切的需求,目前在实际部署系统时,一般需要考虑系统的同城双活或同城、异地多活,以保障业务连续性。

那么在迁移至微服务架构的过程中,微服务架构上对于双活、多活的需求是如何考虑的?如何实现异常情况下快速无中断切换、不同中心间数据一致性等问题是否有解决建议?

博云产品团队:这个问题相对复杂一些,需要考虑IDC的建设方案,网络方案,数据存储方案等。这不仅仅是微服务能够解决的问题,微服务只能解决业务单元拆分开发的问题。

网友4:某些业务场景下会存在不太好熔断的情况,那这些场景是否有好方案可以实现熔断机制?

举例来说:保险客户下单,需要前端出单系统查询客户的一些指标信息,来作为计算保费进行报价的依据,这种类似场景是否有好的方案可以实现熔断机制?

博云产品团队:可以考虑直接在网络层实现,根据出现系统的返回结果做信息匹配,如果不满足要求,直接触发熔断操作,可以参考服务网格的实现方式。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK