• http keep alive


    2、http:

    请求-响应语义:client发送一个请求,服务器返回响应信息。最初每个请求与server创建一个新的socket连接,用该连接发送请求,获取相应信息,关闭连接。

    优点:简单,易于描述、理解、编程。

    缺点:效率低。

    3、keep alive:

    HTTP/1.0,请求增加头Connection:Keep-Alive,server在响应增加头:Connection:Keep-Alive。一次请求完成后,连接保持,clent再发送一个请求时,使用同一个连接,直到client或者server认为会话结束,决定关闭该连接。
    HTTP/1.1 ,默认keep-alive,否则需在头中加Connection:close;Connetion:Keep-Alive无意义。
    不可靠性:HTTP是一种无状态的协议,多次请求之间互相独立,keep-alive也同样,也没有保证client或者server会保持连接open;即使在1.1中,所能做到的也只是可能得到一个连接正被关闭的信息,因此keep-alive不是你编程时可以依赖的。
    Keep-Alive与POST:在HTTP/1.1协议中声明POST的body后不应有任何字符,但也允许有些浏览器在其后加入CRLF。有两种方法处理这种问题:在POST时不用keep-alive,或者server忽略CRLF。

    4、实现keep-alive
    Java-client端:java.net.HttpURLConnection类自动实现了keep-alive,不需要也不能干预。原理是建立client连接池。
    Java-server端:HttpServlet, HttpServletRequest, HtppServletResponse几个类自动实现keep-alive,编程时可以设置respone的content lenth,如果设置了相应内容长度,或者server端缓存的内容长度大于4k,client支持keep-alive,则使用keep-alive。

  • 相关阅读:
    C# Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
    C# Collection was modified;enumeration operation may not execute
    C# 写文件
    AJAX 入门教程
    ABP 软删除ISoftDelete
    C# 随机列表
    C# ConfigurationManager 类的使用
    mui 关闭当前窗口
    C# 委托
    VSTO:使用C#开发Excel、Word【13】
  • 原文地址:https://www.cnblogs.com/toven/p/2682190.html
Copyright © 2020-2023  润新知