1、服务注册与发现
服务注册:生产者服务实例将自身的服务信息注册到注册中心;这部分服务信息包括服务所在主机IP和服务port,以及服务自身的状态和访问协议等。
服务发现:消费者服务请求注册中心所依赖服务信息;消费者服务实例通过注册中心获取生产者服务实例信息,通过这些信息去获得生产者提供的服务。
2、负载均衡
通过某种方式(技术/算法)把客户端的请求可以均匀的分发到各个服务器上,进而提高系统的性能。
3、熔断
在互联网系统中,当生产者服务因压力过大响应过慢或者失败,为了保护系统整体可用性,切断对生产者服务的调用;进而达到牺牲局部保护整体的机制。
4、链路追踪
微服务架构中,一个请求可能调用多个服务(横跨多个服务器),这些服务也有可能在多个数据中心,对一个请求的多个服务的日志链路进行记录,和每个服务的性能监控即链路追踪。
5、API网关
两个系统之间进行API的通信调用,在两个系统之间加上的一个中介者,就是API网关。
微服务中的会遇到需要API网关去解决的问题:
1、客户端需要调用不同的url,增加难度;
2、存在跨域请求的问题;
3、每个微服务都需要进行单独的身份验证。
针对这些问题,才出现了API网关。
API网关应有的作用:
1、统一接入;2、安全防护;3、协议适配;4、长短链接支持;5、容错能力。