来源:架构师社区
在微服务体系架构中,其中较大的应用程序由多个较小的服务组成,每个服务都有自己的目标,它们通过网络进行协作和通信,以实现特定的目标。在微服务体系结构中,每个服务都在自己的进程中运行,并使用轻量级机制(如HTTP/REST和JSON)与其他进程通信。
微服务,它为项目工程、可扩展性和性能提供了好处。将单个应用程序划分为不同的组件意味着可以同时开发和部署每个组件,但又可以分别进行。
![356711a3bd4dc4298e5090ec4a79ddd9.png](https://i-blog.csdnimg.cn/blog_migrate/45d6f82661f8dcf06ba49c2abbacc646.jpeg)
当我们将微服务体系结构与单片应用程序设计进行比较时,它就更有意义了。在单片体系结构设计中,我们创建了一个大的、笨重的应用程序,所有模块都紧密耦合在一个可执行文件中,这个可执行文件通常部署在Web或应用服务器上。
典型的单片架构应用程序如下所示:
![a189887878c0d6303b295f57d99c708c.png](https://i-blog.csdnimg.cn/blog_migrate/950ac73319dcc34c059200bca555670b.jpeg)
微服务示例:
![eb7f62c21839da24ac3c0ddb46156c23.png](https://i-blog.csdnimg.cn/blog_migrate/675984f7f9e9da4aadf874209a3ca458.jpeg)
微服务设计的关键指南
- 松耦合、独立和高性能
- 独立的扩展、部署、监视和管理,不影响任何其他应用程序或服务
- 单一责任原则
- 更快的开发和发布周期
Spring Boot概述
首先,Spring Boot不是一个框架,它是一种轻松创建具有最小配置或零配置的独立应用程序的方法。 这是一种开发基于敏捷开发的应用程序的方法,配置非常少。 它提供了代码和注释配置的默认值,可以在短时间内快速启动新的Spring项目。
![4f6504378fbaff840bca75bd9c8108b6.png](https://i-blog.csdnimg.cn/blog_migrate/d7ca8d1d2c931ff45a6e478e8873e78f.jpeg)
为什么选择Spring Boot?
- 使用Java开发基于Spring的应用程序非常容易。
- 它减少了大量的开发时间并提高了生产率。
- 它避免编写大量的样板代码,注释和XML配置。
- 将Spring Boot应用程序与Spring生态系统集成在一起非常容易,如Spring JDBC,Spring ORM,Spring Data,Spring Security等。
- 它提供了嵌入式HTTP服务器,如Tomcat和Jetty,可以非常轻松地开发和测试Web应用程序。
为什么Spring Boot用于微服务?
第一个好处是Sprin