zoukankan      html  css  js  c++  java
  • 应用层-day02

    web与HTTP

    web的应用层协议时超文本传输协议(HyperText Transfer Protocol HTTP)

    HTTP是由两个程序实现的:一个客户端程序和一个服务器程序。

    HTTP定义了web客户向web服务器请求web页面的方式,以及服务器向客户发送web页面的方式。

    Web浏览器是实现了HTTP的客户端,Web服务器是实现了HTTP的服务器端(如Tomcat等)

    HTTP协议是一个无状态的协议,这里指:服务端并不会保存客户端的信息。

    非持续连接:每个请求响应对是经过一个单独的TCP连接发送。

    持续连接:每个请求响应对是经过同一个TCP连接发送的。

    明显的,持续连接的响应总时长会更短。而且也是HTTP采用的默认形式。

     

    报文格式:

    这个就讲了些请求头,响应头,什么的一些信息,价值不大。

     

    cookie:用户与服务器的交互。

    允许站点对用户进行跟踪。

    cookie有四个组件:1.在HTTP响应报文中的一个cookie首部行。2.在HTTP请求报文中的一个cookie首部行。3.在用户端系统中保留有一个cookie文件,并由用户浏览器管理。4.位于web站点的一个后端数据库。

    常用于因特网购物活动等类似的场景,为用户提供身份表示,以在没有状态的HTTP中让服务端知道用户的每一步操作。

     

    Web缓存:

    web缓存器(web cache)也叫代理服务器(proxy server)

    web 缓存器有自己的磁盘存储空间,可以存储最近请求过的对象的副本。

    浏览器根据域名访问时的步骤如下:1.先向 web 缓存器发送 TCP 链接,查看是否有访问域名的副本。

                    2.如果有的话,就将域名的副本用 HTTP 响应报文 返回。

                    3.如果没有,就去改域名的原地址处建立 TCP 链接,同时 web 缓存器也会在该 链接上发送 HTTP 请求,以将该获取该域名的 HTTP请求副本。

                    4.web缓存器接收到对象后,会将对象存储在本地副本中。

    值得注意的是:web 缓存器既是客户端,又是服务器。

    使用 web 缓存器的原因:1.减少客户请求的响应时间、2.减少整个因特网的web流量,从而改善所有应用的性能。

    web 缓存器的存在促成了一种叫内容分发网络的概念(content Distribution Network CDN)

    条件GET方法

    解决缓存是否是陈旧对象的机制。

    构成条件:1.请求报文使用GET方法、2.请求报文包含一个“If-Modified-Since”的首部行。

    缓存器会发送带"If-Modified-Since"的日期信息,与服务器返回的Last-Modified进行比对,如果两者一致,服务器会返回一个响应报文,且该响应报文包含状态行:304 Not Modified。,该状态行告诉缓存器使用已经缓存过得副本即可。

  • 相关阅读:
    网上找的一个读取wave文件的代码片段
    用c++简单实现智能指针(转)
    剖析ifstream打开含中文路径名文件失败的原因(转)
    我是一个程序员
    .NET简谈委“.NET技术”托链 狼人:
    Entity Framework “.NET技术”4.1 推荐英文教程 狼人:
    Azure和Bing Maps API示“.NET技术”例经验分享 狼人:
    .NET中的异步编程“.NET技术”:使用F#简化异步编程 狼人:
    C#类类型“.NET技术” 狼人:
    Silverlight 应“.NET技术”用整合 狼人:
  • 原文地址:https://www.cnblogs.com/lilinzhiyu/p/8563539.html
Copyright © 2011-2022 走看看