zoukankan      html  css  js  c++  java
  • 《http权威指南》读书笔记18

    概述

    最近对http很感兴趣,于是开始看《http权威指南》。别人都说这本书有点老了,而且内容太多。我个人觉得这本书写的太好了,非常长知识,让你知道关于http的很多概念,不仅告诉你怎么做,还告诉你为什么这么做。于是我把学到的知识点记录下来,供以后开发时参考,相信对其他人也有用。

    重定向和负载均衡

    1.http应用程序总是要做下列3件事:

    • 可靠地执行http事务;
    • 最小化时延;
    • 节约网络带宽。

    2.http重定向的过程:

    • Alice向www.joes-hardware.com发送一条请求。
    • 服务器没有回送带有http状态码200的web页面主体,而是回送了一个带有状态码302的重定向报文。
    • 浏览器会用重定向URL重新发送请求,这次会发送给主机161.58.228.45。(另一个客户端可能会被重定向到另一台服务器上去,比如Bob的请求可能会被重定向到161.58.228.46)

    3.http重定向有以下缺点

    • 需要原始服务器进行大量处理来判断要重定向到哪台服务器上去。
    • 增加了用户时延,因为访问页面时要进行两次往返。
    • 如果重定向服务器出故障,站点就会瘫痪。

    4.DNS重定向:每次客户端访问网站时,都必须将域名解析为IP地址,DNS解析程序可能是客户端自己的操作系统,可能是客户端网络中的一台DNS服务器,或者是一台远距离的DNS服务器。

    5.DNS轮转:为了使web服务器集群平衡负载,DNS主机名解析经常用到DNS轮转。大多数DNS客户端只会使用多地址集中的第一个地址,为了均衡负载,大多数DNS服务器都会在每次完成查询之后对地址进行轮转。

    6.由于单个客户端的缓存的存在,DNS轮转通常都不会平衡单个客户端的负载——一个客户端通常会在很长时间内连接到一台服务器上。

    7.除了DNS轮转,还有其它DNS的重定向算法

    • 负载均衡算法。(每次都将负载最轻的web服务器放在列表的最前面)
    • 邻接路由算法。(DNS服务器会尝试将用户导向最近的web服务器)
    • 故障屏蔽算法。(DNS服务器会绕过出现服务终端或其他故障的服务器。)

    8.怎么重定向到某个代理上去呢:

    • 显式的浏览器配置。(在浏览器中配置代理,缺点是如果代理崩了,用户就会遇到连接方面的问题,而且每次修改代理都需要修改浏览器配置)
    • 代理自动配置。(使用PAC文件,里面有每个URL所关联的代理,这个PAC文件不是配置而是动态获取的)
    • 透明拦截。

    9.缓存代理服务器重定向:

    • WCCP重定向
    • ICP(因特网缓存协议)
    • CARP(缓存阵列路由协议)
    • HTCP(超文本缓存协议)
  • 相关阅读:
    Thrift安装编译指南
    Linux磁盘与文件系统管理
    你懂得C,所以C++也不在话下
    加速NFV(网络功能虚拟化)数据面:SR-IOV和DPDK[原文意译]
    十张图看懂SDN与NFV的区别与联系?
    Lambda表达式用法
    论文写作+gnuplot制图
    私钥、公钥、数字签名和数字证书
    synchronized和Lock的异同
    介绍HTTP协议的传输过程
  • 原文地址:https://www.cnblogs.com/yangzhou33/p/9311280.html
Copyright © 2011-2022 走看看