一分钟弄懂什么是分布式和微服务

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

mark
mark
微服务是啥?

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

微服务架构又是啥?

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

mark
那么分布式又是啥?

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

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

分布式系统是一个松散耦合的网络计算机集合,这些计算机协同工作来完成特定的任务。在这种架构中,系统的功能被分散到不同的物理位置或者节点上,每个节点负责一部分工作。分布式系统的特点是可扩展性强,容错性好,可以跨多个物理位置运行。 微服务架构是一种特殊的分布式架构风格,它将应用程序设计为一组小型的、松散耦合的微服务。每个微服务运行在其独立的进程中,并且通常围绕业务能力构建,能够独立部署、升级和扩展。微服务通过轻量级的通信机制(如HTTP RESTful接口)进行交互。与传统的单体应用相比,微服务强调的是业务的拆分与服务的独立性。 分布式系统和微服务的主要区别在于它们的设计理念和目标: 1. 设计理念:分布式系统更侧重于系统的物理分布和网络通信,而微服务架构则侧重于业务的独立性和服务的模块化。 2. 服务粒度:分布式系统中的服务可以是粗粒度的,而微服务则强调细粒度的服务划分。 3. 自治性:微服务架构中的服务高度自治,每个服务可以独立开发、测试和部署,而分布式系统中的服务自治性可能没有这么强。 4. 技术栈:微服务鼓励使用不同的技术栈来满足不同服务的需求,而分布式系统可能更多地依赖于统一的技术和标准。 5. 目标:分布式系统的目标是提高系统的可用性、可靠性和扩展性,而微服务的目标还包括加快开发和部署的速度,提高系统的可维护性。
评论 60
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值