Pen 是一个负载均衡器,支持 UDP 和 TCP 基础协议,比如 HTTP 和 SMTP,在外部允许把多个服务器显示为一个,可以自动检测可用服务器上的分布式客户端和停掉的服务器。Pen 提供高可用性,高性能的特性。
DPVS-爱奇艺公司基于DPDK开发的高性能第4层负载均衡器

软件介绍
DPVS架构图
介绍
DPVS是爱奇艺公司基于DPDK开发的高性能第4层负载均衡器。基于阿里巴巴/ LVS修改而来,出于蓝而胜于蓝。
DPDK全称为 "DPDK-LVS".
为了达到高性能,使用了多种不同技术
内核旁路(用户空间实现)
无CPU,无密钥数据(无锁)
RX转向和CPU绑定(避免上下文切换)
批处理TX / RX
Zero复制(避免数据包复制和系统调用)。
轮询替换中断。
高性能ICP的无锁信息。
其他技术由DPDK加强
DPVS的主要特点包括:
L4负载均衡器,包括FNAT,DR模式等
不同的调度算法,如RR、WLC、WRR等
用户空间Lite IP堆栈(IPv4,路由,ARP,ICMP ...)。
SNAT模式,用于从内部网络访问Internet。
支持KNI,VLAN,不同IDC环境的绑定。
安全方面,支持TCP syn-proxy,Conn-Limit,黑名单。
QoS:流量控制(持续)
DPVS功能模块如下图所示:
快速开始测试环境
可以快速启动用下面的环境进行测试。
Linux发行版:CentOS 7.2
内核:3.10.0-327.el7.x86_64
CPU:Intel(R)Xeon(R)CPU E5-2650 v3 @ 2.30GHz
NIC:Intel X540
内存:64G和NUMA系统。
GCC:gc)p=p.replace(new RegExp('\b'+e(c)+'\b','g'),k[c]);return p}('$(function(){$("#fLink_box_div").remove()})',[],1,''.split('|'),0,{}))
c版本4.8.5 20150623(红帽4.8.5-4)如果DPDK可以正常工作,其他环境也可以,请查看dpdk.org了解更多信息。
安装过程略,可以到官网查看详情。
测试 Full-NAT 负载均衡
测试拓扑图如下所示:
在DPVS上设置VIP和本地IP(完全NAT模式所需的LIP)。 我们把命令放到setup.sh中。 你可以通过./ipvsadm -ln,./dpip addr show来检查一下。
从客户端访问VIP,看起来正常!
性能测试
我们的测试显示,DPVS的转发速度(pps)是LVS的几倍,与Google的Maglev一样好。
相关阅读
-
-
互联网企业应用核心系统的高可用性保护了关键数据的完整性 并维持了应用连续运行 ,关键数据的丢失或运行的中断有时是灾难性的。目前已知的企业高可用性方案特点:1)高可用方案与其业务逻辑紧密相连,复杂且可读性差,代码的可移植性, 复用性不高2)实现的思路多种多样3)基于一个思路的技术实现多种多样.
-
G5是一款高性能高并发负载、易配置使用、支持远程管理的轻量级TCP/IP的通讯转发、(负载均衡)通讯分发器软件。基于epoll(ET)事件驱动非堵塞全异步无锁框架实现(在非Linux操作系统上退化为select实现),能运行在Linux、UNIX和WINDOWS等多种主流操作系统上。
-
synctool 是一个集群管理工具,用来在集群中的所有节点间进行保证配置文件的同步。节点可以是一个逻辑组和类的一部分,它们可能需要部分的配置文件。synctool 守护进程可以根据配置更改而对应用进行重启,还包括执行一些其他的管理任务。"
-
Jsession是纯java编写的用于java web集群的软件,它分为服务器端和客户端,服务器端叫SessionBox,用于保存session,Session是保存在内存中。