1.5 微服务的优缺点

微服务的优点

  1. 使大型的复杂应用程序可以持续交付和持续部署:因为每个服务相对较小,编写和执行自动化测试变的很容易,bug也就更少;每个服务独立于其他服务部署,不需要与其他开发人员协调,因此持续部署的能力也就更强;每个服务需要满足业务逻辑相对较简单,开发过程中降低了开发难度从而使开发的速度变得更快。
  2. 每个服务都相对较小并容易维护:相比之下每个服务都比较小,开发者更容易理解服务中的代码,服务的编译、启动和研发速度都相对较快。
  3. 服务可以独立部署和扩展:服务可以独立扩展,不管是水平复制的方式增加运行实例,还是通过流量分区的方式增加运行实例,都可以根据服务的情况选择部署在适合它们的硬件之上。
  4. 更容易实验和采纳新的技术:因为服务相对较小且需要满足的业务需求不同,可以根据业务需求采用更合适的编程语言和框架来实现。
  5. 更好的容错性:可以实现更好的故障隔离,某个服务异常,其他服务仍旧可以正常的响应请求。

微服务的缺点

  1. 服务的拆分和定义是一项挑战:拆分微服务没有一个具体的、良好定义的算法可以完成,如果服务拆分出现偏差反而会产生更大的弊端。
  2. 分布式系统带来的各种复杂性:访客的一个请求会执行多个服务的业务逻辑,所以必须要解决分布式事务的问题,同样在测试业务功能也需要同时启动运行多个服务,出现异常后排查问题也会非常复杂。
  3. 当部署跨域多个服务的功能时需要谨慎地协调更多开发团队:必须制定一个发布计划,把服务按照依赖关系进行排序。

持续交付和持续部署可以为业务带来的价值

  • 缩短了产品(或新功能)的上市时间,使企业能够快速响应客户的反馈。
  • 使企业能够提供当今客户所期望的可靠服务。
  • 员工可以花费更多时间来提供有价值的功能,提供员工满意度和技术能力。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值