1 Web最重要的构成基础

   网页

   网页互相连接

1.1 网页

  网页包含多个对象

    对象:HTML文件、图片文件、视频文件、动态脚本等

    基本HTML文件:包含对其它对象引用的连接

1.2 对象的寻址

  URL:统一资源定位器

  格式:Scheme://host:port/path

  Scheme是指协议,默认http协议可省略

2 Web应用遵循的协议HTTP(超文本传输协议)

  采用的是C/S结构

3 Web应用使用的传输层协议是TCP

  为什么采用无状态

  

4 HTTP的连接类型

  HTTP依赖TCP来进行传输,HTTP连接类型分为两类,非持久型连接和持久型连接

4.1 非持久型连接

  每个TCP连接最多允许传输一个对象,HTTP1.0使用的是非持久型连接

4.1.1 通信过程

 4.1.2 响应时间分析和建模

1)RTT(Round Trid Time)

  它是指从客户端发送一个很小的数据包到服务器并返回所经历的时间

2)响应时间(Response time)

 发起、建立TCP连接:1个RTT

 发送HTTP请求消息,到HTTP响应消息到达(不算请求和响应所含的文件对象的传输时间):1个RRT

 响应中所含的文件/对象传输时间

 响应时间= 2RTT + 文件发送时间  

4.1.3 非持久型连接的缺点

  每次TCP连接只能传输一个对象

  每个对象都需要至少2个RTT时间

  操作系统需要为每个TCP连接开销资源

  浏览器会打开多个并行的TCP连接获取需要的对象资源,这样子会对服务器施加很大的压力

4.2 持久型连接

  每个TCP连接允许传输多个对象

  HTTP1.1默认使用持久型连接  

4.2.2 通信过程

  建立TCP连接,服务器响应后,不关闭TCP,后续可以继续发送HTTP消息

4.2.3 持久型连接类型1:无流水的持久型连接

  客户端只有收到前一个响应的请求后才发送新的请求

  每个被引用对象耗时1个RRT+对象传输时间

4.2.4 持久型连接类型2:带有流水机制的持久型连接

  它是HTTP1.1的默认选项

  客户端只要遇到一个引用对象就尽快发送请求

  理想情况下,收到所有应用对象只需要1个RRT+对象传输时间  

5 HTTP消息格式

6 Cooike

  由于http是无状态的,为了标识用户,记录用户,创造了cookie

7 Web缓存/代理服务器技术

7.1 简介

  在不访问服务器的前提下满足客户端的HTTP请求

7.2 特点

    缩短客户端的请求时间

    减少机构/组织的流量

    大范围内实现有效的内容分发

7.3 基本原理

7.4 示例

7.5 缓存和实际的一致性问题

  条件性GET方法

  请求的时候会带上一个版本信息If-modified-since,申明所持有版本的日期,服务器判断缓存的版本是否是最新的,如果是,响应中不包含对象,不过不是,响应包含最新的对象

  

计算机网络基础05-Web应用的更多相关文章

  1. 转帖--计算机网络基础知识大总汇 https://www.jianshu.com/p/674fb7ec1e2c?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

    计算机网络基础知识大总汇 龙猫小爷 关注 2016.09.14 23:01* 字数 12761 阅读 30639评论 35喜欢 720 一.什么是TCP/IP 网络和协议 1.     TCP/IP是 ...

  2. javaSE基础05

    javaSE基础05:面向对象 一.数组 数组的内存管理 : 一块连续的空间来存储元素. Int [ ] arr = new int[ ]; 创建一个int类型的数组,arr只是一个变量,只是数组的一 ...

  3. J2EE基础之Web服务简介

    J2EE基础之Web服务简介 1.什么是Web服务? 在人们的日常生活中,经常会查询网页上某城市的天气信息,这些信息都是动态的.实时的,它是专业的气象站提供的一种服务.例如,在网上购物时,通常采用网上 ...

  4. javascript基础05

    javascript基础05 1.变量的作用域 变量既可以是全局,也可以是局部的. 全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以 在这个脚本的任何位置(包括函数内 ...

  5. HTML5零基础学习Web前端需要知道哪些?

    HTML零基础学习Web前端网页制作,首先是要掌握一些常用标签的使用和他们的各个属性,常用的标签我总结了一下有以下这些: html:页面的根元素. head:页面的头部标签,是所有头部元素的容器. b ...

  6. Spring基础系列-Web开发

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9996902.html SpringBoot基础系列-web开发 概述 web开发就是集成 ...

  7. 计算机网络基础——OSI七层网络模型

    计算机网络基础——OSI七层网络模型 OSI的是什么: 开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称 ...

  8. Apache Shiro:【1】Shiro基础及Web集成

    Apache Shiro:[1]Shiro基础及Web集成 Apache Shiro是什么 Apache Shiro是一个强大且易于使用的Java安全框架,提供了认证.授权.加密.会话管理,与spri ...

  9. socket编程之中的一个:计算机网络基础

    在開始学习网络之前先复习下计算机网络基础吧. 鲁迅说,天下文章一大抄.看你会炒不会炒,基础知识就抄抄书吧. 一 分层模型 1 为什么分层 为了简化网络设计的复杂性.通讯协议採用分层结构.各层协议之间既 ...

  10. 零基础转行web前端,如何高效的去学习web前端

    web前端开发要学的知识内容涉及的会很宽泛,虽然说主要是HTML.CSS和JavaScript这些基础知识点,但学前端开发除了要学这些基础知识外,学员还要在这之上进行延伸和深入的去学,而且互联网时代不 ...

随机推荐

  1. 【题解】[ARC113C] String Invasion

    题面传送门 解决思路 题目大意是给你一个字符串 \(s\) ,定义一次操作为对于长度为 \(3\) 的一个子段,满足 \(s_i=s_{i+1}\ne s_{i+2}\),则可以将 \(s_{i+2} ...

  2. Vue3 企业级优雅实战 - 组件库框架 - 4 组件库的 CSS 架构

    在前一篇文章中分享了搭建组件库的基本开发环境.创建了 foo 组件模块和组件库入口模块,本文分享组件库的样式架构设计. 1 常见的 CSS 架构模式 常见的 CSS 架构模式有很多:OOCSS.ACS ...

  3. [CS61A] Lecture 4. Higher-Order Functions & Project 1: The Game of Hog

    [CS61A] Lecture 4. Higher-Order Functions & Project 1: The Game of Hog Lecture Lecture 4. Higher ...

  4. C#使用正则表达式来验证是否是16进制字符串

    /// <summary> /// 判断是否为16进制字符串 /// </summary> /// <param name="hexString"&g ...

  5. C++实现真值表

    这一片文章主要是关于真值表,在完成之前我也遇到了许多问题.比如怎么去求解表达式的值,怎么去将每个变量进行赋值,也就是如何 将n个字符进行01全排列. 01全排列真的神奇,01全排列其实就是2^n.他可 ...

  6. python面试题常用语句

    一.比较与交换1.比较并输出大的 print(a if a>b else b) 2.交换两个元素 a,b = b,alist1[i],list[j]=list1[j],list[i] 二.排序 ...

  7. 第2-4-2章 规则引擎Drools入门案例-业务规则管理系统-组件化-中台

    目录 3. Drools入门案例 3.1 业务场景说明 3.2 开发实现 3.3 小结 3.3.1 规则引擎构成 3.3.2 相关概念说明 3.3.3 规则引擎执行过程 3.3.4 KIE介绍 3. ...

  8. python将列表中的数字合并成一个数字

    前言 今天,写算法题,其中需要进行这一步操作 输入: [1,2,3,4,5] 输出: 12345 解决办法 我首先想到用 join() 函数,但我发现使用join函数要求列表中的元素都是字符串,所以需 ...

  9. 关于 Windows6.1-KB2999226-x64.msu 此更新不适用你的计算机解决办法

    前言 今天被这个破问题坑了很长时间,网上一大堆扯跳过那个检查,通过提取 cab 文件然后直接用命令安装,我可以明确的告诉你不是那样的解决的,因为我实际用命令装过也装不上(这里我吐槽一下,我猜你最初的问 ...

  10. Linux 中的文件简单说明

    Linux 中的文件简单说明 作者:Grey 原文地址: 博客园:Linux 中的文件简单说明 CSDN:Linux 中的文件简单说明 说明 本文基于 CentOS 7 根目录(/)下文件夹主要作用 ...