1. Http简述
1.1.什么是Url?
URL,指的是网站资源的具体路径
https://pic2.zhimg.com/80/v2-69d3681a5f39967fa2df3bf2bb44663f_720w.jpg
协议: http:// 域名: pic2.zhimg.com/ 端口: 80 文件路径:/v2-69d3681a5f39967fa2df3bf2bb44663f_720w.jpg
2.什么是Html?
网页,存在多个资源。
3.什么是Http?
http是一个简单的请求-响应协议(服务器传输超文本到本地浏览器的传送协议。)
它通常运行在TCP之上
4.总结:URL、HTML、HTTP之间的关系?
一个完整的HTML页面是由多个不同的Url地址资源组成的,而Http协议是用来传输这种Html文件的。
5.Http原理图解?
- 文字说明:
1.访问 一个 地址资源
2.DNS解析
3.建立TCP连接 3次握手
4.客户端发起HTTP请求 获取什么什么资源
5.服务端响应HTTP请求 返回用户请求的资源
6.断开TCP连接
7.浏览器加载并渲染页面( 将服务端回传的源文件 转为 一种 人类能看的懂的资源 )
所以总结一句就是:客户访问网站的过程就是DNS-TCP-HTTP
2. 抓包分析Http原理
使用Wireshark分析
…
3.Http协议的请求发送了什么?
基本
Request URL: http://down.xuliangwei.com/ #请求的URL地址 Request Method: GET #请求的方法 GET获取服务器数据、POST提交数据到服务器 Status Code: 200 OK #状态码 200 表示成功 Remote Address: 39.104.16.126:80 #解析出来的IP地址:端口
请求Headers:
Accept: text/html #接收的类型 Accept-Encoding: gzip, deflate #采用的是gzip的压缩 Accept-Language: zh-C N,zh;q=0.9 #用户偏好语言 Cache-Control: no-cache #缓存控制,不采用缓存 Connection: keep-alive #长链接 TCP Host: down.xuliangwei.com #请求的主机域名 Pragma: no-cache #不缓存 Upgrade-Insecure-Requests: 1 #浏览器,能让http平滑鞥及到https User-Agent: Mozilla/5.0 #客户端使用的浏览器设备(浏览器|IOS|android)
响应Header:
HTTP/1.1 200 OK # 返回服务器的http协议,状态码 Connection: keep-alive #长连接 Content-Encoding: gzip
Content-Type: text/html Date: Tue, 21 Apr 2020 02:39:11 GMT #服务器时间 +8小时 2020 10:39:11 Server: nginx #服务端软件 “返回一个空行 “ “返回内容主体 “
3.1Http返回的的状态码都有什么?
都是什么含义? (必备的)
200 ok 正常的返回
301 永久跳转
302 临时跳转
304 从本地读取缓存
401 用户密码错误(web服务器提供的用户名和密码)
403 站点目录权限有关 | 找不到 index.html
404 Not Found 服务器无法根据客户端的请求找到资源(输入了不存在的uri)。 ( 就是找不到 )
405 多半是服务端返回的资源类型,客户端无法正确识别
500 服务器内部错误( 跟应用程序与数据库有关的)
502 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应 ( 运维出现最多的错误 )
503 后端服务过载无法处理客户端请求
504 后端服务超时
......
nginx ——-> php,等组件关闭导致的502错误图解:
参考文档———->>> 网页状态码详解
- Http中出现的长连接和短连接是什么?
短连接: http 1.0 建立连接,请求——响应———中断 然后重复 长连接: ==http 1.1 == 一次连接 ( 建立连接 请求—-> 响应 请求—-> 响应 请求—-> 响应 最后中断,有个毛病,他是并行的) HTTP2.0 HTTPS中应用比较广泛 (请求包含多个内容同时请求,同时响应。)
4.http补充:
1.什么是PV💖
PV即页面浏览量,比如用户访问一个网站算1个pv,刷新一次页面则累计pv+1,如果多次打开或刷新同一页面则浏览量累计。假设我们对一个网站的A页面和B页面分别新了10次,请问该用户总共产生了多少PV ?
2.什么是UⅣ💖
UV即独立访客,访问网站的一台电脑客户端为一个访客。可以理解成访问某网站的4脑的数量。比如电脑、手机算2个UV,无论访问多少次网站,最终UV数量就是2。
3.什么是IP💖
IP即独立公网P数,是指1天内多少个独立的P浏览了页面,比如你在家通过拨号上网访问某个网站,此时网站会记录你的公网P地址。那如果你在公司和很多同事同B访问一个网站,那该网站会记录多少个公网P呢?答案是1个,为什么?如果你学过NAT..
4.什么是并发💖
并发︰指的是同时,我们可以理解为一段时间内(比如10秒,网站支持同时访问的人数,假设10s并发值如果为500时,一天能达到多少PV ? 500660 *8
计算:
1.http额外知识:
location字段:
Referer字段: 页面从哪个页面过来的,可用于分析数据。
(淘宝,京东,唯评会------》到我这里下单成交情况)
2.Http相关术语、pv、uv、ip、并发、日活、月活?
1个电脑
1个手机
一个页面 刷新了 100次 请问 pv 是多少 uv 多少?
pv ( 1 + 1 ) * 100 = 200
UV 2
3.请计算如下题的 IP、PV、UV、并发
假设公司有一座大厦,大厦有100人,每个人有一台电脑和一部手机,
上网都是通过NAT转换,每个人刷新网站10次,请问对应的 pv,uv,ip,并发
分别是多少。
PV: 页面浏览量 100人 * 2设备 * 10次刷新 = 2000pv
UV: 独立的客户 100人 * 2设备 = 200UV cookie session 借助开发工具完成 uv 统计
IP: 独立公网IP 100人-->NAT-->1IP
并发: 单位时间内100人同时请求网站,100
巧妙回答: 都是运营部门统计 粗略统计 电商平台:
面试题1: 上家公司的P、PV , UV是多少? 小说网站1分钟并发5000\60*24=720w(鬲丝、通常一看—天 教育网站1分钟并发10000l60|24=1440w(努力青年、通常周末量大) 金融网站1分钟并发500*1440= 72w(有钱人、所以量不大、但交易额度高电商网站1分钟并发
游戏网站———在线用户、日活跃数、月活跃数
需要注意的是:这仅仅是参考值,因为不同的业务他们的pv都不一样。
*面试题2:上家公司的P、PV、UV是如何统计的?
1.使用awk提取P,sort排序、uniq统计去重统计P。
⒉第三方统计工具进行pv统计,比如. piwik、腾讯分析、百度统计、开发自研统计平台。
对于活跃永久要结合产品的具体情况定义。 ip 20-100w pv 50-100w 总结一下日活:每天的活跃用户数量。 月活:一个月内,总的活跃用户数量。在取数据的时候,一定要注意去重。