在过去的十年中,Web 应用程序已经发展到可以容纳数百万用户并产生数 TB 的数据。这些应用程序的用户期望快速响应和 高可用性。为了使应用程序快速可用,它们必须快速响应以增加负载。实现这一目标的一种方法是使用微服务架构。
在本文中,您将了解微服务架构的含义、它与其他软件架构模式的比较以及使之成为可能的技术。您还将了解微服务架构的优缺点、应避免的实践,并获得资源以进一步提高您的知识。
入门 | 微服务
微服务架构是一种软件架构模式,其中应用程序执行的每个任务都由称为服务的独立应用程序处理。该服务通常管理自己的数据库,并通过事件、消息或 REST API 与其他服务通信。微服务简化了构建软件的任务,尤其是在规模上。
微服务可帮助您实现以下目标:
- 提高开发人员的工作效率并让开发团队拥有更大的自主权。
- 使独立扩展应用程序变得更加容易。
- 使发布新功能更容易,因为不必为每次更改重新部署整个应用程序。
什么是微服务?
微服务是一组独立的、用途有限的应用程序,它们共同构成一个更大的应用程序。
以电子商务应用程序为例。产品列表功能可以打包为单个服务,价格计算功能也可以。当用户选择产品并查看价格时,价格计算服务将计算折扣和运费。每项服务都可以拥有自己的专用数据库和 Web 服务器,从而可以根据需要进行扩展。
微服务允许系统更加模块化。您无需构建单个大型系统,而是构建一组服务,每个服务处理系统的一个方面。在微服务成为主流之前,工程团队将系统构建和部署为单个内聚单元。这有时会导致开发和可扩展性瓶颈,因为对应用程序的每次更改都需要重新构建整个应用程序。这意味着开发人员在如何进行更改方面的自由度较低