4分钟了解微服务 - 微服务简介
学习微服务对于任何开发人员来说都可能是一件令人生畏的事情,但对于初级开发人员或很少了解后端工作原理的前端工程师来说尤其如此。
最令人困惑的是,对于微服务的真正含义,实际上并没有 100% 标准的教科书定义。
在本视频中,我将尝试快速介绍微服务的内容、原因和方式,以便您可以大致了解微服务的核心原理以及它们在科技界如此受热捧的原因。
即使你对后端编程不感兴趣,至少了解一下这些概念也是个好主意
视频摘要:
什么是微服务
它们是一种软件架构风格,涉及将应用程序分解为可以彼此独立部署和开发的各个部分。
优点和缺点
那么,为什么公司要使用这些东西呢?显然,从长期有效的单体应用模式转变过来,有一些好处。
- 更快的开发时间——团队可以自行做出决定,并且大多数情况下不需要与其他团队协调新的部署
- 更容易让新员工入职——新工程师在做出贡献之前不需要学习整个应用程序,他们可以从单个微服务开始工作
- 扩展——微服务可以根据流量需求独立扩展。如果某个瓶颈拖慢了应用程序的速度,则无需扩展整个单体应用。
- 可靠性——由于微服务彼此分离,如果部署了错误,可以将其隔离并回滚,而无需关闭其他服务
这并不是说微服务是完美的,使用微服务会带来很多权衡,并且通常建议小型应用程序和小型公司使用整体式架构,直到它们开始遇到扩展问题。
- 复杂性——设计不良的微服务架构最终可能比一般的单体架构更糟糕
- 微服务之间的通信——由于微服务被分解,它们需要某种标准的方式相互通信,从而产生了一系列新问题
如何了解更多信息
这只是一个简短的总结,我计划对微服务进行更深入的教程,所以如果您对此感兴趣,请关注或订阅。
在此之前,如果您有兴趣了解更多信息,这里有一些很好的资源:
- https://martinfowler.com/articles/microservices.html
- https://www.nginx.com/blog/introduction-to-microservices/
- https://www.scalyr.com/blog/api-vs-microservices/