负载均衡及网络原理

一、TCP三次握手四次挥手介绍
 
三次握手:客户端发送请求给服务端,服务端收到请求后,给客户端发送ack确认,客户端收到后,给服务端发送确认请求包。
 
 
四次挥手:
    关闭客户端与服务端的链接:客户端发送关闭请求,服务端收到后回复ACK确认。
    关闭服务端与客户端的链接:服务端向客户端发起关闭请求,客户端回复ACK确认。
   
     
 
 

二、网络7层架构与TCP/IP四层模型前端

      
 
    
 

三、HTTP原理算法

    Http是无状态协议,客户端与服务端创建的短链接服务端响应后就关闭了。默认80端口
    1.地址解析;根据请求地址解析出协议名、主机名、端口、请求路径,而后根据DNS解析出IP
    2.将上述信息及参数封装HTTP请求包,
    3.封装成TCP包并创建链接(三次握手)
    4.发送请求命令
    5.服务器响应
    6.服务器关闭TCP链接,若浏客服端Connection:keep-alive,TCP 链接在发送后将仍然保持打开状态
 
 

四、HTTP状态码数据库

400  Bad Request(错误请求)
401  Unauthorized(未受权)
402  Payment Required(须要付款)
403  Forbidden(禁止访问)
404  Not Found(未找到)
405  Method Not Allowed(不容许使用该方法)
406  Not Acceptable(没法接受)
407  Proxy Authentication Required(要求代理身份验证)
408  Request Timeout(请求超时)
500  Internal Server Error(内部服务器错误)
501  Implemented(未实现)
502  Bad Gateway(网关错误)
503  Service Unavailable(服务不可用)
504  Gateway Timeout (网关超时)
505  HTTP Version Not Supported(HTTP 版本不受支持)
 

五、HTTPS原理后端

        HTTPS是以安全为目标的HTTP 通道加入 SSL 层,其所用的端口号是 443
1. 创建链接获取证书:客户端经过 TCP 和服务器创建链接,而且在握手中过程当中请求证书。即客户端发出一个消息给服务器,这个消息里面包含了本身可实现的算法列表和其它一些须要的消息,SSL的服务器端会回应一个数据包,这里面肯定了此次通讯所须要的算法,而后服务器向客户端返回证书。(证书里面包含了服务器信息:域名。申请证书的公司,公共秘钥)。
2.证书验证:Client 在收到服务器返回的证书后,判断签发这个证书的公共签发机构,并使用这个机构的公共秘钥确认签名是否有效,客户端还会确保证书中列出的域名就是它正在链接的域名。
3.数据加密和传输: 若是确认证书有效,那么客服端生成对称秘钥并使用服务器的公共秘钥进行加密。而后发送给服务器,服务器使用它的私钥对它进行解密。
   
    
     
 
 
     
 
 
  
 
 

六、HTTP1.0与HTTP1.1的区别缓存

 
 
         Http1.0问题:连接没法复用,即不支持持久连接。每次链接都要三次握手和慢启动(对网路实际容量进行试探,避免因为发送了过量的数据而致使阻塞)。
    线头阻塞(Head of Line Blocking,HOLB, 请求队列的第一个请求由于服务器正忙(或请求格式问题等其余缘由),致使后面的请求被阻塞。
    Http1.1 解决的1.0的问题后,经过header 里Connection: keep-alive,请求管道化,增长缓存。
      将来2.0的趋势,多路复用,头部字节压缩传输。
 

七、CDN介绍安全

    CDN内容分发系统,可以实时地根据网络流量和各节点的链接、负载情况以及到用户的距离和响应时间等综合信息将用户的请求从新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的情况,提升用户访问网站的响应速度。
    CND通常包含分发服务系统、负载均衡系统和管理系统。
 

八、Nginx 反向代理介绍服务器

        使用代理服务器做用:能够提供访问速度(热点和静态内容缓存);防火墙做用(过滤不安全信息);经过代理访问不能访问的站点;
        反向代理做用:能够防止外网对内网服务器的恶性攻击、缓存以减小服务器的压力和访问安全控制以外,还能够进行负载均衡,将用户请求分配给多个服务器
        Nginx的功能:反向代理、动静分离、负载均衡。
 

九、Nginx负载均衡策略网络

        轮询:
        权重:
        ip_hash:
        url_hash:
        fair 响应时间短优先分配
        least_conn 最少链接
 

十、Nginx经常使用配置架构

        限流:Nginx按请求速率限速模块使用的是漏桶算法。
        limit_req_zone 用来限制单位时间内的请求数,即速率限制
        limit_req_conn 用来限制同一时间链接数,即并发限制
        
  
  
 

十一、负载均衡软件介绍并发

        Nginx/LVS/HAProxy的基于Linux的开源免费的负载均衡软件,
        F5/Array 收费的,F5功能更强大,收费也贵
        Web前端采用Nginx/HAProxy+Keepalived做负载均衡器;后端采用MySQL数据库一主多从和读写分离,采用LVS+Keepalived的架构。
 
        七层负载均衡与四层负载均衡的区别:
        七层负载均衡:工做在应用层,还能够支持四层负载均衡,基于URL等应用层信息的负责均衡,例子:Nginx、HAProxy、MySQL Proxy。七层应用负载,能够动静分离,使网络更智能化。
         四层负载均衡:工做在传输层,基于IP+PORT ,例子:LVS、F5。TCP的创建(三次握手)是客户端与服务端直接创建的,负责均衡设备相似路由器功能,负责寻找最佳服务器,对报文中IP地址修改成后端服务器。
相关文章
相关标签/搜索