好贷网好贷款

大公司积累

发布时间:2016-12-5 8:31:43 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"大公司积累",主要涉及到大公司积累方面的内容,对于大公司积累感兴趣的同学可以参考一下。

监控 日志 配置 部署 健康检测、session同步、Director旁路。 架构、容量、监控、部署、数据、安全、维护 cluster: 1.LB load Balance  负载均衡 2.HA high Available 高可用 3.HP High Performance 高性能 (一) 负载均衡(让多台服务器提供同样的服务,各台服务器处理的请求量相似): 健康检测;session同步;Director同步;数据服务器独立(读写分离);PHP的页面信息; 最简单的负载均衡:为一个域名提供多个A记录(解析到不同的主机上)。 缺点:方式简单,过于粗糙,此种方式基于RR方式轮询;     由于DNS请求时会有TTL值,会在DNS服务器有缓存。每次解析到同一个MAC,导致负载不均衡;所以此种方式不好。 企业级应用: 在后端真正的服务器前,增加中间层,来做转发(Director)。此种方式:不管任何DNS解析,都会将请求发送到Director,因此负载均衡的核心组件是Director。 如果后端扩容,则直接可以增加机器(或者删除服务器)。 此种请求的稳定:如果后端有某台机器故障,Director能够将请求发送到其他机器。但是:Director能够对后端服务器进行健康检测。这种情况是全部OK的吗?不是。 比如如果是电子购网网站,Director将请求发送到web4服务器,但是突然web4挂掉,如果不做处理,则该用户在发送请求的时候,请求将再次发送到该机器(持久连接),但是web4挂掉,就会选择其他机器。因此之前请求的数据则未保留web4的相关数据。这就是session需要同步的问题。我们的web服务器的长连接其实是跟Director建立的。 session:为用户保留用户浏览及产生的数据。Director后端连接的服务器,默认是不同步的,每台服务器都是默认维护自己的数据。因此需要对session进行同步:可以进行多播或者广播。由于各个web上进行session的同步,因此即使有某台服务器挂掉,则可以从另一台服务器上获取。 webserver支持session:Tomcat jsp;则可以实现多播,完成在多个节点之间共享session。所以很多电子商务网站用jsp开发。 Director:既要处理输入请求,又要处理响应,因此Director可以进行旁路:仅仅处理进来的请求,而出去的响应则直接返回给用户。既Director只处理一半请求,因此Director能够处理的并发量就非常大。 (二)、高可用集群(正常情况下,一台web服务器正常工作,挂掉的时候,另一台服务器则能够代替原来的服务器进行同样处理): 但是对Director的依赖非常大,因此Director也需要备份,搞两台。那么DNS解析的时候,原先解析到Director1(DNS解析的A记录,将访问Director1的IP地址)。那么Director2就将替换,1故障的时候,2将本身的自身IP地址替换为1的IP地址,同样继续服务。 如何让w1,w2,w3,w4访问的页面都是同样的呢?如果把mysql都装到各自机器上呢?则w1的数据,w2将没有。为了让架构的稳定,将mysql服务器独立出来,所有用户的写操作都提交到mysql服务器。当并发量超大的时候,mysql服务器压力过大。因此可以做一个主从:主服务器仅处理写请求,从服务器则只处理读请求,也可以设计多个从。上一层服务器则可以将读、写请求分别发送到主、从服务器。但是上一层模块,只配置了一个服务器,因此需要对主、从数据库服务器做读写分离工具。但是读写分离工具,仍需要做个高可用。 这里还未涉及到缓存。 存储页面数据:存放在每台服务器上;如果有更新,则每台服务器都要进行更新。代价较大。如何简化?共享存储,搭建NFS,每个php的目录挂载到NFS服务器目录,则访问时都将访问NFS服务器;但是NFS又有可能成为单点故障,最关键的网络带宽则成为瓶颈,服务器性能也有可能成为瓶颈。因此:可以单拿出一台服务器,更新时只更新拿出的服务器A,让A进行同步。主服务器通知从服务器(使用crontab),仍会有延迟;rsync+inotify此种机制放到A,一旦有数据更新,则会通知web服务器自动更新。 负载均衡的常见解决方案: Hardware:价格昂贵(几十万以上),F5公司的bigip, IBM A10, Citrix Netscaler SoftWare:LVS linux Virtual Server       HaProxy LVS/HaProxy:四层交换。 七层负载均衡:Nginx、Varnish(将动态结果缓存)/squid(缓存、反向代理即转发) 数据存储:硬raid较安全。 DAS: Direct Attached Storage 通过PCI-E插槽,直接连接到主板上,完成数据的传送。(通过主板总线) NAS: NetWork Attached Storage 文件共享服务器,比如NFS(内部也有操作系统,内部有自己的raid),通过文件共享协议。比较耗网卡,通过网卡实现,速度和性能相对较差。 SAN:(SCSI:Small Computer System Intergrate:小型计算机系统接口,总线接口,传送的时候,包括数据及指令。总线类型:USB, IDE, SATA, SCSI,某一种总线,就是某一种协议,只有使用这种总线、设备才能完成数据的传送。通过CPU来进行解码。SCSI有自己的控制器,数据不依赖CPU来进行解码就可以完成传输,同时传输速率也非常高。IDE:最高速率133M;SCSI:300M;SCSI:1W5转/min,一般磁盘都是真空封装的。摩擦较大,转速越快,读取速度越快。) Storage Area Network  LVS: 主要工作是在Linux内核中完成的,类似iptables(netfilter、路由,转发,决策等)。在tcp/ip协议栈实现,将请求转发给后端的RS。 LVS的核心组件是ipvs,工作在内核中;通过ipvsadm来提供用户空间的管理。ipvs和netfilter不能同时使用。 工作在四层(TCP/IP端口),根据端口和IP地址来完成转发:端口提供协议类型。Director有两个IP:VIP:跟用户(CIP)连接使用;DIP:跟后端RIP(RS server)通信的IP。 LVS有三种类型: 1).LVS-NAT网络地址转换 模型: LVS-NAT工作特点: 1.所有的RS和LVS的DIP必须处在同一个网段当中,不能跨网段; 2.RIP必须是私有的,仅用于集群间通信; 3.Director处理客户端的请求及后端的响应数据包; 4.RS的网关要指向DIP; 5.可以实现端口映射:即用户访问80端口,但是可以映射到后端其他端口; 6.RS可以是任意操作系统:只要提供对饮的服务即可。 7.Director很容易成为系统性能瓶颈。 2).LVS-DR 直接路由 用户的请求经过Director,而用户的请求直接返回给客户端(CIP),即响应数据包不经过Director。 LVS-DR工作特点: 1. 2.RIP可以使用公网地址; 3.Director仅处理入站请求,而响应则直接返回给RIP,因此RS网关不能指向Director; 4.不支持端口映射; 5.DR模型压力要远比NAT性能高。生产环境中通常使用DR模型。 3).LVS-TUN IP隧道。 基本和DR模型相同,但是与DR最大区别是:DIP与RIP可以处在不同网段中。 LVS调度方法(重点:大概10种方法) LVS工作特点: 1.所有的RS和LVS的DIP必须处在同一个网段当中,不能跨网段; 2.RIP必须是私有的,仅用于集群间通信; 3.Director处理客户端的请求及后端的响应数据包; 4.RS的网关要指向DIP; 5.可以实现端口映射:即用户访问80端口,但是可以映射到后端其他端口; 6.RS可以是任意操作系统:只要提供对饮的服务即可。 7.Director很容易成为系统性能瓶颈。

上一篇:【创业者必知的经验总结】
下一篇:JS学习之道:js打开新窗口的各种方法

相关文章

关键词: 大公司积累

相关评论