架构演变过程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/longgeqiaojie304/article/details/86407672

架构演变过程

1、基于服务的架构演变过程一

架构演变图详解:图一演变至图四

(1)第一张图(单一应用):应用程序、数据库、文件系统等都部署到一台服务器上,如果某个环节环节出了问题,那么整个应用系统都不能使用。

 

(2)第二张图(mvc):开发模式的改变,v表示是视图层,可以由前端工程师专门编写前端代码;m表示业务逻辑层、c表示控制层都由后端工程师负责编写逻辑代码。

 

(3)第三张图(业务拆分):高并发场景的出现,使得应用需要根据业务进行拆分,这样客户端通过访问不同的业务子系统来减轻单体应用带来的服务器压力。如电商平台:订单子系统、商品子系统、支付子系统等

 

(4)第四张图(基于Dubbo构建微服务):客户端访问不同业务子系统都是通过服务治理框架Dubbo,所有的服务的管理都在Dubbo中。

 

2、基于服务的架构演变过程二

微服务架构图详解:

(1)CDN加速:CDN即内容分发网络,网络就近原则,加速静态资源的访问。

 

(2)反向代理(nginx):反向代理服务器可以用nginx实现到应用的负载均衡;当然nginx+lua也可以实现网关的功能;nginx可以存放静态资源以提高静态资源访问速度。

 

(3)web应用集群:一个jar包或者一个war包部署多个实例,实现应用集群,以达到应用的高可用。

 

(4)分布式数据库:读写分离、分表分库都是为了减轻数据库的压力,提高数据库的抗并发能力。

 

(5)redis集群:redis是一个缓存数据库,它的读写速度非常快,可以有效的减轻对关系型数据库的读写压力,防止数据库宕机。

 

(6)文件服务容器:分布式文件存储服务器(比如FastDFS),提高文件上传下载效率。

 

3、系统之间的调用方式

(1)Webservice – wsdl

       这个是很早的时候使用Webservice方式进行系统之间的调用,目前应该只存在老系统中,现在很少见到了。

 

(2)httpclient

       支持get、post接口调用,这种方式比较繁琐点。

(3)rpc通信方式

       rpc调用的方式性能会好点,目前rpc通信方式有Dubbo。

 

(4)restful通信方式

       restful通信方式最好是要遵守restful命名规范,目前restful通信方式有Spring Cloud。

猜你喜欢

转载自blog.csdn.net/longgeqiaojie304/article/details/86407672