其他分享
首页 > 其他分享> > SpringCloud微服务体系软负载实践

SpringCloud微服务体系软负载实践

作者:互联网

基础架构图

LVS 实现

LVS的组成

LoadBalancer

负载调度器,由一台或多台DirectorServer(调度器)组成,负责请求的分发,不负责具体业务。监控业务层中服务器状态,及时踢除异常的服务器或将恢复的服务器重新入列。

ServerArray

服务器池,由多台具有相同功能的服务器(Real Server)组成。

SharedStorage

共享存储,为服务器池提供一个共享的存储区域,保证相同功能服务的数据一致性。

LVS的三种机制

VS/NAT(Virtual Server via Network Address Translation)

当DirectorServer接收到请求后,将数据报文的地址改写成目标Real Server的地址,目标Real Server处理完成需要返回DirectorServer。因为此机制客户端请求与返回必然经过DirectorServer,并发量大时,DirectorServer是性能瓶颈。

VS/TUN(Virtual Server via IP Tunneling)

利用IP隧道技术,DirectorServer收到请求后封装数据报文转发给目标Real Server,然后由目标Real Server直接响应给客户端。

VS/DR(Virtual Server via Direct Routing)

VS/DR通过改写请求报文中的MAC地址,直接将请求发送到目标Real Server,目标Real Server直接响应给客户端,节省了IP隧道开销,为三种机制中性能最高的一种,但是要求DirectorServer和Real Server物理上有一个网卡通过不间断的局域网相连。

Ribbon简介

Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用,Feign也是基于此实现。

ID生成器

使用雪花算法,不依赖其他模块,具有有序性。

Docker容器化部署

DockerMachine

docker-machine可以快速的在多服务器环境下安装docker环境。

DockerSwarm

 

标签:Real,负载,请求,SpringCloud,DirectorServer,服务器,Server,服务体系,客户端
来源: https://blog.csdn.net/IAGod/article/details/100031989