微服务优点缺点

转自:https://blog.csdn.net/varyall/article/details/78905332

微服务架构采用Scale Cube方法设计应用架构,将应用服务按功能拆分成一组相互协作的服务。每个服务负责一组特定、相关的功能。每个服务可以有自己独立的数据库,从而保证与其他服务解耦。

 

耦合是指两个或两个以上的体系或两种运动形式间通过相互作用而彼此影响以至联合起来的现象。

解耦:将存在的依赖去掉,比如类A的一个函数需要类B的一个函数返回值,那么A就是依赖B,那么B改动时A很有可能功能受影响,那么不如在中间加另一个类C,使C成为A和B的桥梁,于是A对B的依赖就消失了,B在改动时也不影响A,而想要影响时,改动C就行了,这就是解耦。

我记得是设计模式里什么来着

 

 

作者:Niteip

链接:https://www.zhihu.com/question/20821697/answer/27469835

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

微服务优点

1、通过分解巨大单体式应用为多个服务方法解决了复杂性问题,每个微服务相对较小

2、每个单体应用不局限于固定的技术栈,开发者可以自由选择开发技术,提供API服务。

3、每个微服务独立的开发,部署

4、单一职责功能,每个服务都很简单,只关注于一个业务功能

5、易于规模化开发,多个开发团队可以并行开发,每个团队负责一项服务

6、改善故障隔离。一个服务宕机不会影响其他的服务

 

 

微服务缺点:

1.开发者需要应对创建分布式系统所产生的额外的复杂因素

l  目前的IDE主要面对的是单体工程程序,无法显示支持分布式应用的开发

l  测试工作更加困难

l  需要采用服务间的通讯机制

l  很难在不采用分布式事务的情况下跨服务实现功能

l  跨服务实现要求功能要求团队之间的紧密协作

2.部署复杂

3.内存占用量更高

 

 

内部服务之间的通信方式有两种:

1、基于HTTP协议的同步机制(REST、RPC);

2、基于消息队列的异步消息处理机制(AMQP-based message broker)。

 

 

 

 

 

 

微服务架构的好处

      1.单个服务很容易开发、理解和维护。

      2.这种架构使得每个服务都可以有专门开发团队来开发。

      3.微服务架构模式是每个微服务独立的部署。

      4.微服务架构模式使得每个服务独立扩展。

 

微服务架构的不足

      微服务应用是分布式系统,由此会带来固有的复杂性。

      服务地址目录,服务健康度,部署困难,服务依赖问题,数据库分区问题。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微服务架构适用于以下场景: 1. 复杂应用:当应用程序变得庞大且复杂时,微服务可以将应用程序拆分为多个小型的、自治的服务,使得开发、测试、部署和维护更加容易。 2. 高可扩展性需求:微服务架构可以根据需求独立地扩展特定的服务,而不需要整个应用程序一起扩展,从而提供更好的可扩展性和性能。 3. 多团队协作:当多个开发团队同时开发和维护一个应用程序时,微服务可以提供独立的服务边界,使得不同团队可以独立开发、测试和部署各自的服务,提高协作效率。 4. 技术栈异构:微服务架构支持使用不同的技术栈开发和部署各个服务,因此适用于需要使用不同技术栈的场景。 5. 高可用性和容错需求:微服务架构中的独立服务可以通过复制和负载均衡来提供高可用性,并且一个服务的故障不会影响整个应用程序的运行。 微服务架构的优点: 1. 高可扩展性:可以根据需要独立地扩展特定的服务,而不需要整个应用程序一起扩展。 2. 独立部署和维护:每个服务都可以独立地进行部署、测试和维护,减少了对整个应用程序的影响。 3. 技术栈灵活性:每个服务可以使用不同的技术栈,使得开发人员可以选择最适合特定服务的技术。 4. 高可用性和容错性:通过复制和负载均衡可以提供高可用性,并且一个服务的故障不会影响整个应用程序的运行。 5. 团队自治:不同团队可以独立地开发、测试和部署各自的服务,提高协作效率。 微服务架构的缺点: 1. 复杂性增加:微服务架构引入了分布式系统的复杂性,包括服务发现、网络通信、数据一致性等方面的挑战。 2. 运维成本增加:由于涉及多个服务,运维和监控的成本相对较高。 3. 分布式事务管理:在跨多个服务的操作中,确保数据的一致性和事务管理是一个挑战。 4. 系统间通信开销:由于服务间需要通过网络进行通信,会引入一定的延迟和开销。 综上所述,微服务架构适用于复杂、大规模和需要灵活性的应用场景,但也需要权衡其复杂性和运维成本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值