快速了解之分布式和微服务

   日期:2020-05-31     浏览:101    评论:0    
核心提示:微服务是架构设计方式,分布式是系统部署方式,两者概念不同。-> 分布式是什么分布式服务:服务是分散部署在不同的机器上的,一个服务负责一个或几个功能,是一种面向SOA架构【1】的,服务之间也是通过RPC【2】来交互或者是webService【3】来交互的。在逻辑架构设计完后就该做物理架构设计,系统应用部署在超过一台服务器或虚拟机上,且各分开部署的部分彼此通过各种通讯协议交互信息,就可算作分布式部署。注:【1】SOA(面向服务的架构)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆运维
微服务是架构设计方式,分布式是系统部署方式,两者概念不同。
-> 分布式是什么

分布式服务:服务是分散部署在不同的机器上的,一个服务负责一个或几个功能,是一种面向SOA架构【1】的,服务之间也是通过RPC【2】来交互或者是webService【3】来交互的。

在逻辑架构设计完后就该做物理架构设计,系统应用部署在超过一台服务器或虚拟机上,且各分开部署的部分彼此通过各种通讯协议交互信息,就可算作分布式部署。

注:

【1】SOA(面向服务的架构)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。

【2】RPC(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务。

【3】webService就是一个部署在Web服务器上的,它向外界暴露出一个能够通过Web进行调用的API。简单来说就是自己不写,而是去调用别人的服务,调别人的天气预报,地图信息。

-> 微服务是什么

微服务,就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以单独部署运行,服务之间可以通过RPC【2】来相互交互。(可能每个微服务都是由独立的小团队开发,测试,部署,上线,负责它的整个生命周期。)

-> 小结

微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高。(有一种说法,分布式服务最后都会向微服务架构演化。 )不过服务微服务化后带来的挑战也是显而易见的,例如服务粒度小,数量大,后期运维将会很难

生产环境下的微服务肯定是分布式部署的,分布式部署的应用不一定是微服务架构的。(比如集群部署,它是把相同应用复制到不同服务器上,但是逻辑功能上还是单体应用。)

-> 补充:微服务架构又是什么

在做架构设计的时候,先做逻辑架构,再做物理架构,当你拿到需求后,估算过最大用户量和并发量后,计算单个应用服务器能否满足需求,如果用户量只有几百人的小应用,单体应用就能搞定,即所有应用部署在一个应用服务器里,如果是很大用户量,且某些功能会被频繁访问,或者某些功能计算量很大,建议将应用拆解为多个子系统,各自负责各自功能,这就是微服务架构。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服