http协议
http简介
HTTP
全称:Hyper Text Transfer Protocol
中文名:超文本传输协议
什么是超文本
包含有超链接(Link)和各种多媒体元素标记(Markup)的文本。这些超文本文件彼此链接,形成网状(Web),因此又被称为网页(Web Page)。这些链接使用URL表示。最常见的超文本格式是超文本标记语言HTML。
htmll文件->包含各种各样的元素(URL链接)->形成 WebPage简称web页面
什么是URL
URL
即统一资源定位符(Uniform Resource Locator),用来唯一地标识万维网中的某一个文档。
URL
由协议、主机和端口(默认为80)以及文件名三部分构成:
https://blog.driverzeng.com/driverzeng/2039.html
http:// 协议
blog.driverzeng.com 主机:端口 端口默认80
driverzeng/2039.html 文件名及其路径
Http工作原理
流程
# 当我们在浏览器输入网址 http://blog.xxx.com/test/1.html
浏览器请求DNS服务器
-本地DNS(local DNS)优先级高
如果本地DNS有blog.xxx.com的域名解析,就会将IP返回给浏览器
-DNS服务器 13根域
.com
.cn
.edu
.gov
.net
.xyz
.org
-递归查询
别人帮你查
blog/test/down/pic/.xxx.com
blog.xxx.com ---A记录 xxx.xxxx.xxxx(真实IP)
-迭代查询
自己去查询下一步
# DNS将域名解析成IP地址(xxx.xxx.xxx.xxxx) 返回给浏览器
# 浏览器与该IP的80端口进行端口连接(TCP/IP)
-三次握手
# 发送GET请求,请求下载1.html到浏览器
/var/www/html/test/1.html
# 服务器将 /var/www/html/test/1.html 放回发给浏览器
# 断开TCP/IP连接
-四次挥手
# 浏览器展示web页面(超文本传输协议,将html页面下载至浏览器中)
请求DNS
DNS回复
http的请求方式
GET 请求读取一个web页面
POST 明文提交数据,读取一个web页面
DELETE 调用后端接口,删除web页面
PUT 调用后端,存储和上传功能页面
http的请求方式(了解即可)
HEAD 读取web页面的头部信息
TRACE 测试服务器请求
OPTION 查询特定选项
CONNECT 代理服务器
请求头部信息
响应头部信息
HTTP状态码(重点)
200 页面访问成功
301 永久重定向
302 临时重定向
304 浏览器缓存
307 内部重定向
400 客户端错误 BAd request
401 认证失败
403 权限不足
404 找不到页面
500 服务器内部错误(代码问题,服务器问题)
502 服务器不可用 Bad Gateway 后端服务错误,哪台服务器的日志上出现了502,就检查哪台服务器的服务
503 服务器过载,访问频率过快,会503报错
504 后端服务超时
Http响应方法
状态码 | 含义 | 例子 |
---|---|---|
1xx | 通知信息 | 100=服务器正在处理客户请求 |
2xx | 成功 | 200=请求成功(OK) |
3xx | 重定向 | 301=页面改变了位置 |
4xx | 客户错误 | 403=禁止的页面;404=页面未找到 |
5xx | 服务器错误 | 500=服务器内部错误;503=稍后再尝试 |
PV UV IP解读
pv:页面独立浏览量(一条日志,一个请求)
UV:独立设备
IP:独立IP
假设公司有一座大厦,大厦有100人,每个人有一台电脑和一部手机,上网都是通过nat转换出口,每个人点击网站2次, 请问对应的pv,uv,ip分别是多少?
pv 100*2*2 400
UV:100*2 200
IP:1
SOA松耦合架构
面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。
# 解读
将不同的服务进行拆分,再通过接口跟契约联系起来
# 例子
一个电商公司,他的网站页面功能会有很多
注册
登录
首页
详情页
购物车
价格标签
留言
客服
支付中心
物流
仓储信息
订单相信
图片