前文说了一下,在文末提到《什么是微服务》,初创团队不建议直接使用微服务,对于初创团队,最根本的是活下去,而想要使用微服务,需要有很多基础建设。本文就来说下,微服务都需要哪些基础建设。
需要说明的是,下面这些组件,都是基于服务太多这个前提。
微服务的出现是为了研发效能的提升:相同的人数可以处理更多的需求、维护更多的产品,可以更快的交付产品。基于这点,微服务的基础组件,就从解放人力,减少人为失误出发。

1 容器
1.1 运行容器
服务运行的容器是支持服务提供对外访问的基础,根据微服务的要求,每个服务单独运行的独立进程中,所需要的运行容器就需要小巧灵活,运行容器可以集成在运行环境中,或者能够集成在服务可执行包中。
在Java领域,各大厂商都有自己的web容器:WebLogic、JBoss、Tomcat、Jetty等。SpringBoot内嵌了Tomcat和Jetty,默认打包方式是FatJar,jar保证包含了服务运行所有的基础,可以支持微服务部署的基本要求。
1.2 部署容器
部署容器是服务运行的加成组件,容器的好处在于一套镜像可以支撑测试和生成部署。这样做可以避免测试环境没有问题,生产环境各种报错的情况。但是想要实现一套镜像到处运行,还需要集中配置的支持。
而且对于部署容器,最好有一套容器调度平台,这样能够更有效的使用资源。如果没有,可能用部署容器和普通部署方式,区别不是很大。
2 服务注册/发现
服务注册/发现是两个组件,彼此没有必然关系,但一般这两个组件会成对出现,解决同一个问题:服务地址动态变化的配置问题。
在单体架构时代,企业内部只有几个大系统,想要调用其他服务,只需要提前指定IP地址就行了。但是到

本文讲述了微服务所需要的基础建设,包括容器的运行与部署、服务注册/发现、网关、授权认证、配置管理、日志收集和监控告警等方面,旨在提高研发效能并减少人为失误。各个组件如容器调度平台、服务注册/发现组件、统一网关、授权认证系统、配置管理服务、日志聚合和全方位监控告警机制,都是为了确保微服务架构的稳定性和高效性。
最低0.47元/天 解锁文章
905

被折叠的 条评论
为什么被折叠?



