微服务介绍
微服务是一种经过良好架构设计的分布式架构方案,微服务架构特征。
微服务是把单体的模块拆分成独立的项目。
微服务的组成
项目因为被拆分了,这些独立的项目需要通过注册中心和配置中心同一调用。
用户想访问时需要通过服务网关来访问。
服务网关可以把用户的请求路由到具体的服务。
因为用户很多时,要大量读写数据库,数据库会扛不住,需要用到分布式缓存(用户搜索时先从分布式缓存中查找找不到再查数据库)。
用户搜索量实在是太大时就需要加上分布式搜素了。
分布式项目中,用户请求会通过多个服务器,A-B-C-D,这会浪费掉大量时间,这时候就需要消息队列了,调用A后A会发消息给B,然后结束自己的服务,B也一样,这样就缩短了大量时间。
微服务场景下某个服务出现问题时不好排查,这里就需要分布式日志服务,对集群的所有服务进行日志管理,出现问题好排查。
如果你想知道整个集群中每个服务器的CPU占用状态,内存状态等,可以引入:系统监控链路追踪。
持续集成:当服务器多了的时候手动部署就不太现实了,就需要用到Jenkins来自动编译部署等,docker来打包成镜像。
微服务技术栈
SpringCloud与SpringBoot的版本对应关系
SpringCloud与SpringBoot的版本是一一对应的。