概念 - 分布式,微服务,集群

总结:分布式属于微服务, 虽说微服务是架构设计,分布式属于系统部署,但架构设计和系统部署是分不开的,架构设计和系统部署要结合考虑,相互影响的

分布式与集群

分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务

分布式的每一个节点,都完成不同的业务,一个节点垮了,那这个业务就不可访问了。

分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率

微服务

微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

********************************************************************************************************************************************

简单的说,微服务是架构设计方式,分布式是系统部署方式,两者概念不同

mark

mark

微服务架构业务架构图

 

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

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

mark

那么分布式又是啥?分布式服务顾名思义服务是分散部署在不同的机器上的,一个服务可能负责几个功能,是一种面向SOA架构的,服务之间也是通过rpc来交互或者是webservice来交互的。逻辑架构设计完后就该做物理架构设计,系统应用部署在超过一台服务器或虚拟机上,且各分开部署的部分彼此通过各种通讯协议交互信息,就可算作分布式部署,生产环境下的微服务肯定是分布式部署的,分布式部署的应用不一定是微服务架构的,比如集群部署,它是把相同应用复制到不同服务器上,但是逻辑功能上还是单体应用。

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


问 :分布式是否属于微服务

答案是肯定的。微服务的意思也就是将模块拆分成一个独立的服务单元通过接口来实现数据的交互

 

consult:

https://blog.csdn.net/zhonglunsheng/article/details/83153451

https://blog.csdn.net/qq_37788067/article/details/79250623

你可能感兴趣的:(微服务,系统级总结,编程思想,概念)