假如架构中的主机拥有全量数据集,即使其中一台挂了,也不会导致离线,高可用(负载均衡集群)

假如架构中的各主机只拥有sharing,那我们谓之 分布式集群

硬件ctrix

F5-BIG-IP(一台动辄20w,40w,80w一买就是两台)

A10 A10

Array Redware

软件: httpd  nginx varnishi缓存代理服务器 lvs haproxy ats(Apache traffic server基于C)

perlbal web负载均衡程序(I/O前半段异步)事件驱动

基于工作层次划分:

传输层:lvs(不用监听套接字,400-500万个并发连接,但能达到百万级并发的站点有几个,不过除了负载均衡以外,没有其他更多功能了)、 haproxy(mode tcp这一模式可以模拟tcp层调度,支持应用层协议,tcp方面都工作在内核,可能承载3万左右并发/每秒,一天是86400秒,假如一个页面有40个链接, 能响应的pv就达到千万级别了,更别提上了cdn以后,很多请求实际轮不到后端来处理),lvs还是个入门级的负载均衡器,用不到,但几乎是企业必谈话题

应用层:haproxy,nginx,ats,perlbal(套接字工作程序,监听80端口)

假定这样一个使用场景,一个lvs负责n个mysql服务器的负载均衡调度(请求3306端口)

lvs(linux virtual server)工作在传输层,任何请求在内核协议栈中必须理解 3306应该怎么处理,正常流程 netfilter-prelocating blah blah(anyway本来应该找注册了监听套接字的3306端口的服务,但是没找,直接甩给了后端的mysql服务器),这就要求建立能分析协议报文的负载均衡(据说lvs强于原来apt的dnet所以被linux收录进内核)

而真正提供服务的mysqlserver才是realserver,tcp二层交换设备叫交换机---就是一个负载均衡设备,它具备转发功能----就是一个转发器,接收来自一个主机或者多个主机对一个主机的访问,他也能把来自一个主机的很多请求分发到多个主机上去(只要目标不同),所以说他是个分发装备,但它是基于目标mac地址分发的,所以把它称作二层设备

路由器把报文做转发的时候,把ip作为转发地址 路由器是三层设备

lvs所在主机为四层设备,他根据请求报文的目标ip和端口做分发(也被称作layer4交换机或四层路由),根据负载均衡算法,从集群中挑选出一个主机作为请求的响应,依附于netfilter

有5个流向

正常流程prerouting-input

最新文章

  1. SQL*Plus命令行工具连接Oracle数据库
  2. vim 学习日志(4):多窗口使用技巧
  3. aix DNS 配置以及网络命令traceroute和nslookup 和 dig 命令
  4. iOSbase64
  5. JavaScript与Flash的通信
  6. 菜鸟学SSH(十二)——Hibernate与Spring配合生成表结构
  7. Stimulsoft.Report.net报表简单实用
  8. ch1-使用路由-静态资源-404页面-ejs模板
  9. 字符串解码DecodeString
  10. HTML超连接的使用
  11. POJ 2245 Addition Chains(算竞进阶习题)
  12. 《CSS世界》读书笔记(七)
  13. PowerDesigner使用(设置继承,实现)
  14. 7.11js的总结
  15. linux内核中的PTP clock是什么?
  16. ibatis注意要点
  17. springMVC容器和Spring容器
  18. 纯净版Windows7系统迅雷下载路径
  19. angularjs-$location
  20. linux -- 查看Ubuntu命令行调用的文件

热门文章

  1. XML模块,面向对象思想与类的定义
  2. python+selenium显示等待、隐式等待和强制等待的区别
  3. zabbix监控ssl证书过期时间
  4. java学习-2
  5. Job for jenkins.service failed because the control process exited with error code.
  6. RS232与RS485的功能与区别!
  7. 【监控实践】【4.4】使用DMV和函数监控数据库状态和资源使用
  8. RuntimeError: Model class user.models.User doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
  9. Reatful规范
  10. java执行bat代码