微服务结构是将单一应用程序开发为小型服务的方法,各服务在自己的过程中运行,服务之间通信采用的轻量级通信机制(通常使用HTTP资源API),这些服务以业务能力为中心构筑,可以通过全自动部署机制独立部署。这些服务是最小的集中管理,服务可以用不同的语言开发,使用不同的数据存储技术。那么微服务架构的优缺点有哪些?
微服务架构的优缺点有哪些?
1.易于开发和维护:一项服务只关注一项特定的业务功能,业务清晰,代码量少。开发维护单项微服务相当简单。整个应用程序由一些微型服务构建,因此整个应用程序处于可控状态。
2.单一服务启动快:单一服务代码少,启动快。
3.局部修改易于部署:单个应用程序只要有修改,就必须重新部署整个应用程序,微服务解决了这个问题。一般来说,修改某个微型服务,只需重新配置该服务。
4.技术堆栈不受限制:微服务结构可结合业务和团队特点,合理选择技术堆栈。例如,一些服务可以使用关系数据库Mysql,一些服务可以使用非关系数据库redis。甚至可以根据需服务可以使用JAVA开发,一些微服务可以使用Node.js开发。
5.按需收缩:可根据需要实现细粒度的扩展。例如,系统中的某个微服务遇到瓶颈,可以结合微服务的特点,增加内存,升级CPU,增加节点。
1.运输要求高:更多的服务意味着更多的运输投入。在单体结构中,只需保证一个应用程序的运行,在微服务中,需要保证几十到几百个服务器的正常运行和合作,这给运行维护带来了巨大的挑战
2.分户式固有的复杂性:使用微服务结构的是分布式系统。对于分布式系统,系统容错,网络延迟带来巨大挑战。
3.界面调整成本高:微服务之间通过界面通信。
微服务近年来风起云涌,具有灵活部署、可扩展、技术异构等优点,但也给开发、运维带来了复杂性。要不要采用微服务架构需要根据系统的特点,结合企业的组织架构、团队能力等多方面来综合判断,而不是为微服务而服务。当开发一个新的系统时,由于业务逻辑和系统边界还不够清楚,可以首先采用Monolithic方式开发,直到识别出稳定的逻辑之后,再拆分微服务,从而避免由于边界不清而重新划分带来的返工。以上就是微服务架构的优缺点有哪些的全部内容,希望对你有所帮助。
[免责声明]
文章标题: 微服务架构的优缺点有哪些?
文章内容为网站编辑整理发布,仅供学习与参考,不代表本网站赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时沟通。发送邮件至36dianping@36kr.com,我们会在3个工作日内处理。