首页 > 编程知识 正文

微服务的劣势,微服务与传统的优势

时间:2023-05-04 08:03:43 阅读:144623 作者:3047

微服务最初是由Martin Fowler和James Lewis在2014年共同提出的。 微服务的体系结构样式是一种使用一组小服务开发单个APP应用程序的方法。 每个服务都在自己的进程中运行,并使用轻量级机制进行通信。 通常是HTTP API,这些服务基于业务能力构建,可以通过自动化部署机制独立部署。 这些服务是用不同的编程语言实现的。

二、微服务优势:

1 .各项微服务小,可以聚焦指定的业务功能或业务需求。

2 .微服务可以由由两到五个开发者组成的小团队单独开发。

3 .微服务是松散耦合的、功能性的服务,无论是开发阶段还是部署阶段都是独立的。

4 .微服务可以用不同的语言开发。

5 .微服务容易被开发者理解,便于修改和维护,让团队更多关注自己的工作成果。 不合作就无法表达价值。

6 .微服务允许融合最新技术。

7 .微服务是业务逻辑的代码,不会与HTML、CSS或其他接口组件混合。

三.微服务体系结构的缺点

1 .运维要求高。 在单个体系结构中,只需要维护此项目,而在微服务体系结构中,项目由多个微服务组成,因此每个模块出现问题都会导致整个项目的行为异常,原因是哪个模块因为不能一步一步地用调试程序追踪,所以对承运人有很高的要求。

2 .方差的复杂性。 虽然在单体系结构中可以不使用分布式,但在微服务体系结构中分布式几乎是必须的技术,由于分布式本身的复杂性,微服务体系结构也变得复杂。

3 .接口调整成本高。 例如,用户微服务由订单微服务和电影微服务调用。 当用户微服务的接口发生重大变化时,所有依赖它的微服务都必须进行相应的调整。 由于微服务可能非常多,调整接口所带来的成本将明显上升。

4 .在重复劳动单体体系结构中,如果一个业务在多个模块中共同使用,我们可以抽象为一个工具类,直接从所有模块调用,但微服务却不行。 因为该微服务的工具类不能直接从其他微服务调用,所以必须为每个微服务构建这样的工具类,导致代码重复。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。