图解微服务架构演进
2016-03-09 15:19
549 查看
原文出处: 泥瓦匠BYSocket
常规的垂直应用架构就相当于传统的那种,现阶段传统垂直架构改造的核心就是对应用做服务化改造,服务话改造使用的核心技术架构就是分布式服务框架。
其实这篇是概念上的总结,技术概念软文,纪录此文让自己更明白什么是微服务化架构。
那什么是微服务架构呢?
先从第一个图中第一个说起吧。
1.orm – 单一应用架构
我认为是一个高内聚版本,所有功能部署在一起。数据访问框架(orm)成为关键。这个架构很少被人使用,几乎接近灭绝了吧。
优点:成本低,适合功能少又简单 缺点:很多,比如无法适应高流量,二次开发难,部署成本高
2.mvc架构 - 垂直应用架构
当访问量渐渐增大,慢慢演化成用的很多的mvc架构。虽然还是所有的功能都是部署在同一个进程中,但是可以通过双机或者前置负载均衡来实现负载分流。这样应用也可以拆分成不同的几个应用,以提升性能和效率。
此时,mvc架构用于分离前后端逻辑。一方面,有一定的模块化。另一方面,加速和方便了开发。
3.rpc架构 - 分布式服务架构
当mvc垂直应用分成不同应用时,越来越多的情况下。不可避免的事应用a与应用b之间的交互。此时将核心和公共的 业务功能抽出来,作为单独的服务,并实现前后端逻辑分离。
此时则就需要提高业务的复用及整合的分布式rpc框架,例如dubbo等。
4.soa架构 - 流动计算架构
当rpc架构中的服务越来越多时,服务的生命周期的管控,容量的评估等各种问题会出现,使服务化成为瓶颈。需要增加一个调度中心来进行对服务管控,监督等。
然后,提到关键的 --
答:它就是将功能分散到各个离散的服务中然后实现对方案的解耦。服务更原子,自治更小,然后高密度部署服务。
下面是对微服务架构的图解:
多了解吧。
问啊-定制化IT教育平台,牛人一对一服务,有问必答,开发编程社交头条 官方网站:www.wenaaa.com 下载问啊APP,参与官方悬赏,赚百元现金。
QQ群290551701 聚集很多互联网精英,技术总监,架构师,项目经理!开源技术研究,欢迎业内人士,大牛及新手有志于从事IT行业人员进入!
前言
来自dubbo的用户手册中的一句话:随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。
常规的垂直应用架构就相当于传统的那种,现阶段传统垂直架构改造的核心就是对应用做服务化改造,服务话改造使用的核心技术架构就是分布式服务框架。
其实这篇是概念上的总结,技术概念软文,纪录此文让自己更明白什么是微服务化架构。
服务化架构演进
请看下图,也来自dubbo的用户手册,图中恰恰少了微服务架构的图。那什么是微服务架构呢?
先从第一个图中第一个说起吧。
1.orm – 单一应用架构
我认为是一个高内聚版本,所有功能部署在一起。数据访问框架(orm)成为关键。这个架构很少被人使用,几乎接近灭绝了吧。
优点:成本低,适合功能少又简单 缺点:很多,比如无法适应高流量,二次开发难,部署成本高
2.mvc架构 - 垂直应用架构
当访问量渐渐增大,慢慢演化成用的很多的mvc架构。虽然还是所有的功能都是部署在同一个进程中,但是可以通过双机或者前置负载均衡来实现负载分流。这样应用也可以拆分成不同的几个应用,以提升性能和效率。
此时,mvc架构用于分离前后端逻辑。一方面,有一定的模块化。另一方面,加速和方便了开发。
3.rpc架构 - 分布式服务架构
当mvc垂直应用分成不同应用时,越来越多的情况下。不可避免的事应用a与应用b之间的交互。此时将核心和公共的 业务功能抽出来,作为单独的服务,并实现前后端逻辑分离。
此时则就需要提高业务的复用及整合的分布式rpc框架,例如dubbo等。
4.soa架构 - 流动计算架构
当rpc架构中的服务越来越多时,服务的生命周期的管控,容量的评估等各种问题会出现,使服务化成为瓶颈。需要增加一个调度中心来进行对服务管控,监督等。
然后,提到关键的 --
5.微服务架构
问:什么是微服务架构?答:它就是将功能分散到各个离散的服务中然后实现对方案的解耦。服务更原子,自治更小,然后高密度部署服务。
下面是对微服务架构的图解:
小结
伴随敏捷开发,持续交付,DevOps,Docker等高速发展,微服务必然是未来演进方向。加油~多了解吧。
问啊-定制化IT教育平台,牛人一对一服务,有问必答,开发编程社交头条 官方网站:www.wenaaa.com 下载问啊APP,参与官方悬赏,赚百元现金。
QQ群290551701 聚集很多互联网精英,技术总监,架构师,项目经理!开源技术研究,欢迎业内人士,大牛及新手有志于从事IT行业人员进入!
相关文章推荐
- 针对架构设计的几个痛点,我总结出的架构原则和模式
- 常见JS挂马方法及如何防止网站被黑客挂马?
- 雅虎十四条:网站前端网页优化的14条原则
- 使用jenkins配置.net mvc网站进行持续集成二
- PHP网站 通过js方式判断是否是手机访问,若是 跳转到手机版网址!
- Dedecms网站搬家
- 微信Android客户端架构演进之路
- ha高可用集群配置(双机热备)
- 大型分布式网站架构技术总结
- .Net网站架构设计(五) 消息中间件
- 关于架构的理解
- 大型网站架构系列:电商网站架构案例
- [转]秒杀系统架构分析与实战
- 【OpenStack】OpenStack系列15之OpenStack高可用详解
- Haproxy+Keepalived主主高可用
- iOS新建项目架构规范
- 网站一大串
- App工程结构搭建:几种常见Android代码架构分析
- iOS应用架构谈(一):架构设计的方法论
- 推荐一个CMMI认证查询网站