微服务-入门介绍
11/18/18About 2 min

Spring Cloud Gateway
- 基于Spring WebFlux和Project Reactor的响应式API网关
- 核心是一系列WebFilter
- 支持动态路由、限流、熔断、重试等功能
- 提供了丰富的路由匹配规则和过滤器机制
Nginx
- 高性能HTTP服务器&反向代理器
- 作为web服务器
- 负载均衡服务器
- 邮件代理服务器
- 模块
- 核心
- 配置
- 事件
- HTTP
- 对比TOMCAT
- Nginx
负载均衡、反向代理、处理静态文件有优势。 Nginx 处理静态请求的速度高于 apache。- TOMCAT是动态解析服务器,处理动态请求,是编译 JSP\Servlet 的容器。
- Nginx 有
动态分离机制,静态请求直接就可以通过 Nginx 处理,动态请求才转发请求到后台交由 Tomcat 进行处理。
服务中心
Nacos
- 阿里巴巴开源的服务发现和配置管理平台
- 支持服务发现、配置中心、动态DNS服务
- 特点
- 支持AP和CP模式切换
- 动态服务发现和健康检查
- 统一配置管理,支持热更新
- 支持多种注册中心协议(REST、gRPC、Dubbo等)
zookeeper
- 服务注册与发现
- 通过 Watcher 机制实现 Push 模型,服务注册信息的变更能够及时通知服务消费方。
- 角色(其他的注册发现没有)解释
Leader节点是 Zookeeper 集群工作的核心,负责进行选举投票的 发起和决议,更新系统状态;Follower节点是 Zookeeper 集群状态的跟随者,用于接收客户端 的请求并向客户端返回结果,在选举过程中参与投票。Observer可以接受客户端连接,将写请求转发给 Leader 节点,但 Observer 不参加投票过程, 只同步 Leader 节点的状态,Observer 的目的是为了扩展系统,提高读取速度。
ServiceCenter
- 通过ServiceCenter提供的接口可以检索微服务信息
服务生产与消费
- Nacos服务治理三角色
- 服务注册中心
- 服务提供者
- 服务消费者
Spring Cloud LoadBalancer
- Spring官方提供的客户端负载均衡器
- 替换了Netflix Ribbon,作为Spring Cloud的默认负载均衡组件
- Spring Cloud LoadBalancer 的负载均衡策略
- 简单轮询负载均衡(默认)
- 随机负载均衡
- 支持自定义负载均衡策略
- 与Spring Cloud Gateway、Feign等组件无缝集成
缓存服务
redis
- 数据库,缓存,消息中间件
- 特征
- 单线程,消除串行控制开销
- 支持数据持久化
- 分布式架构,读写分离
- 数据结构多样
- 支持数据备份
- Redis Cluster
- 无中心结构,主从结构