计算机网络基础05-Web应用
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应用的更多相关文章
- 转帖--计算机网络基础知识大总汇 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是 ...
- javaSE基础05
javaSE基础05:面向对象 一.数组 数组的内存管理 : 一块连续的空间来存储元素. Int [ ] arr = new int[ ]; 创建一个int类型的数组,arr只是一个变量,只是数组的一 ...
- J2EE基础之Web服务简介
J2EE基础之Web服务简介 1.什么是Web服务? 在人们的日常生活中,经常会查询网页上某城市的天气信息,这些信息都是动态的.实时的,它是专业的气象站提供的一种服务.例如,在网上购物时,通常采用网上 ...
- javascript基础05
javascript基础05 1.变量的作用域 变量既可以是全局,也可以是局部的. 全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以 在这个脚本的任何位置(包括函数内 ...
- HTML5零基础学习Web前端需要知道哪些?
HTML零基础学习Web前端网页制作,首先是要掌握一些常用标签的使用和他们的各个属性,常用的标签我总结了一下有以下这些: html:页面的根元素. head:页面的头部标签,是所有头部元素的容器. b ...
- Spring基础系列-Web开发
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9996902.html SpringBoot基础系列-web开发 概述 web开发就是集成 ...
- 计算机网络基础——OSI七层网络模型
计算机网络基础——OSI七层网络模型 OSI的是什么: 开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称 ...
- Apache Shiro:【1】Shiro基础及Web集成
Apache Shiro:[1]Shiro基础及Web集成 Apache Shiro是什么 Apache Shiro是一个强大且易于使用的Java安全框架,提供了认证.授权.加密.会话管理,与spri ...
- socket编程之中的一个:计算机网络基础
在開始学习网络之前先复习下计算机网络基础吧. 鲁迅说,天下文章一大抄.看你会炒不会炒,基础知识就抄抄书吧. 一 分层模型 1 为什么分层 为了简化网络设计的复杂性.通讯协议採用分层结构.各层协议之间既 ...
- 零基础转行web前端,如何高效的去学习web前端
web前端开发要学的知识内容涉及的会很宽泛,虽然说主要是HTML.CSS和JavaScript这些基础知识点,但学前端开发除了要学这些基础知识外,学员还要在这之上进行延伸和深入的去学,而且互联网时代不 ...
随机推荐
- Redis的攻击手法
目录 Redis概述 Redis未授权 漏洞发现 漏洞验证 Redis写shell 漏洞利用 Redis写公钥 漏洞利用 主从复制RCE 漏洞简介: 漏洞利用 计划任务反弹shell 漏洞利用 Red ...
- 高精度加法(Java)
题目描述 高精度加法,相当于 a+b problem,不用考虑负数. 输入格式 分两行输入. a , b ≤ 10^500 输出格式 输出只有一行,代表 a + b 的值. 思路 使用数组进行模拟, ...
- 2022春每日一题:Day 16
题目:不同子串个数 这题需要利用后缀数组求出的height的性质,我们发现对于每个后缀,他的height后的所有子串就是算在答案里,因此答案只需要求出n-height[i]-sa[i]+1的和就可以了 ...
- 【云原生 · Kubernetes】配置 Rancher docker 云平台
个人名片: 因为云计算成为了监控工程师 个人博客:念舒_C.ying CSDN主页️:念舒_C.ying 1.1 Rancher 概述 Rancher 是一个开源的企业级容器管理平台.通过 Ranc ...
- 正则表达式之前戏、字符组、量词、特殊符号、贪婪与非贪婪匹配等,python正则模块之re
目录 正则表达式前戏 正则表达式之字符组 正则表达式之特殊符号 正则表达式之量词 贪婪匹配与非贪婪匹配 转义符 正则表达式实战建议 re模块 re模块补充说明 作业 正则表达式前戏 案例:京东注册手机 ...
- question(The hierarchy of the type MyServlet is inconsistent)——解决tomcat重新添加依赖
在保存代码时突然出现类似于tomcat不能正常使用的警告弹窗,在eclipse中删除tomcat依赖之后,按照以下步骤先在eclipse添加依赖 1.eclipse项目中添加tomcat依赖 wind ...
- linux学习相关资料整理
linux常用指令记录 Python3.9.9安装 supervisor安装与监控nginx 使用supervisor监控mysql supervisor监控tomcat配置文件 nginx-1.22 ...
- bug处理记录:java.util.UnknownFormatConversionException: Conversion = 'Y'
1. 报错: java.util.UnknownFormatConversionException: Conversion = 'Y' at java.util.Formatter$FormatSpe ...
- 新项目决定用 JDK 17了
大家好,我是风筝,公众号「古时的风筝」,专注于 Java技术 及周边生态. 文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在里面. 最近在调研 JDK 1 ...
- History模式的配置细节
旧文从语雀迁移过来,原日期:2021-09-13 前言 我们知道,vue 单页面应用打包出来是静态资源,一般需要 nginx 或者其他服务器访问:当如果 Vue Router 是采用 History ...