什么是微服务?
微服务是一种系统架构的设计风格,主旨是将原本复杂的系统拆分成多个独立的小型服务,每个服务维护自身的业务逻辑、数据处理及部署,服务与服务之间通过简单的通信协议进行通信(比如restful API),不要求每个微服务使用同一种编程语言编写。
微服务优缺点?
可参考 https://blog.csdn.net/Leon_cx/article/details/81487547
优点归纳为以下几点:
缺点:
- 运维层面上,运维需要维护的服务更多了
- 问题难定位,单体项目日志集中在一起,出现问题好定位,而微服务通过日志去定位问题比较困难
- 微服务的雪崩问题,由于网络的不稳定性,不可能保证每个服务100%可用,如果某个服务发生问题,可能会导致依赖服务阻塞,最终引发雪崩效应
- 分布式的复杂性,由于服务都独立部署,事物问题、网络延迟等问题会增大业务的复杂性
缺点的解决方案:
- 运维层面上可以写自启动脚本
- 定位问题方面可以将日志文件写到一起
- 雪崩问题可以添加服务可用性监控
- 分布式复杂性问题,可以使用分布式事务解决事物问题
虽然使用为服务会带来一些问题,但是每当遇到问题,都会产生解决方案。相对于微服务带来的好处,微服务在一些大型服务上的使用前景还是很乐观的。
文章取自: https://blog.csdn.net/Leon_cx/article/details/81487547
感谢博主 Lebron_Chen 的贡献
原文地址:https://www.cnblogs.com/zhanghaibin16/p/11785933.html
时间: 2024-10-04 13:40:40