从单体应用到微服务的架构演进.docx
《从单体应用到微服务的架构演进.docx》由会员分享,可在线阅读,更多相关《从单体应用到微服务的架构演进.docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、从单体应用到微服务的架构演进公益【摘要】在现在微服务大行其道的形势下,我们依然很难说单体应用一 无是处。甚至有一些对性能苛刻的场景也同样适合用单体应用,这可能会颠覆 一部分人的认知。最近有不少企业都不约而同的在关注原有应用的迁移上云和应用改造的事情, 都在纠结一个问题,那就是是否有必要把单体应用做微服务拆分和架构改造。大家所处行业不同、自身情况不同、业务对IT的诉求也不同、对技术的理解和 拥有成本也不一样,所以说,这个问题没有标准答案,也不会有标准答案。但 是有一些共性的原则是可以梳理借鉴的。一、单体应用不是过街老鼠,微服务也不一定是济世良方首先我们来看单体应用和微服务的基本特征: 微服务架构
2、是采用化整为零的架构原则,将应用程序表示为细粒度的、松散耦合的服务集合。由于整体的复杂性从整体的功能耦合被转移到了服务的协调级别上,因此每个服务都代表了一种业务细粒度的功能,可 以更加容易地去做管理和协同。而单体架构是在统一的功能框架下,将离散的功能点用一定的流程编排 到一起,形成一个不可拆分单元,作为一个整体进行测试、部署和扩 展。由于所有组件都有较强的依存关系,各个组件很难单独运行,形成 了一荣俱荣一损俱损的格局。单体应用是长期以来,在竖井式FT的大格局下,我们所形成的的程式化思维的 产物,在现在微服务大行其道的形势下,我们依然很难说单体应用一无是处。 比如单体应用部署、运维、测试都很简便
3、,在业务功能逻辑和性能要求没有高 到一定程度的时候,单体应用帮我解决了很多问题。当然,随着后互联网时代 的到来,单体应用越来越不适应敏捷快速的需求变化,越来越难以承接大流量 和大并发的考验。从传统的经验来看,单体应用适合用于简单业务场景简单,功能不复杂,研发 易于管理,还有一些对性能苛刻的场景也同样适合用单体应用,这可能会颠覆 一部分人的认知。另外,如果业务的需求非常稳定,基本不会变化,也同样可 以继续沿用单体应用架构。再来说微服务,在现在的需求格局下(所处背景很重要,在单体应用大行其道 的时候,没人会怀疑它的正确性),微服务很显然易于扩展,而且应用组件相 互独立,有清晰的边界,通讯方式更便捷
4、,对多种语言都很友好,还有,开发 过程可以被分开管理,实现多团队协同,服务组件之间独立部署,易于独立部 署和维护。但是随着微服务的广泛应用,短板也随之暴露,比如技术成本畸 高、服务管理、调度、测试、部署、监控、排障都变得比较复杂,就像肥皂一 样,看似简单,其实很难以握持。什么时候需要考虑引入微服务呢?如果用单体应用能轻松解决的问题就没必要用微服务架构。一般来说,如果发 生以下情况,就可以考虑引入微服务了:.业务需求开始频繁变化,功能或者系统交付速度远远跟不上需求变化; 代码变得非常臃肿,非常庞大,测试、维护和修改都变得小心翼翼; 访问量激增,对分布式和弹性扩展有较强需求;有大量单体应用同时提供
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单体 应用 微服 架构 演进
限制150内