数据库运维
记录DBA学习成长历程

第20章:网站架构

文章目录

1 用户访问网站的一个原理过程

0) 用户打开浏览器输入地址之后,按下回车
1) 完成地址域名的解析过程(域名--IP解析)
首先本地解析过程: 缓存(ipconfig/display)或者hosts文件中查看
然后递归查询过程: 
LDNS服务器(网卡配置的)
LDNS服务器获取到A记录信息,也会进行缓存
迭代查询过程: 
LDNS--根域名服务器(顶级域名服务器信息)---顶级域名服务器(二级域名服务器)---二级域名服务器(域名-IP对应关系:A记录)
2) 用户利用解析后的IP地址发起网络访问: 三次握手过程
3) 用户发起HTTP访问过程: HTTP请求信息 (多个)
4) 用户发起HTTP访问过程: HTTP响应信息 (多个)
5) 用户在浏览器看到页面 
6) 用户利用解析后的IP地址结束网络访问: 四次挥手过程

重点考核:
1) DNS解析过程
2) TCP三次握手/四次挥手过程
3) HTTP报文信息

2 HTTP报文信息说明

2.1 HTTP请求报文

1) HTTP请求行信息 : GET index.html HTTP 1.1
a 请求方法:
  GET方法: 获得得到 --- 下载
  POST方法: 提交推送 --- 上传
b 请求的数据信息:
c 请求时使用的协议(HTTP1.1) 

2) HTTP请求头信息
请求文件信息类型
Accept: text/html
对请求信息做了压缩处理
Accept-Encoding: gzip 
请求的语言语言
Accept-Language: zh-CN,zh;q=0.9
请求是否调用了缓存
Cache-Control: no-cache
是否使用TCP长连接
Connection: keep-alive = 0(短连接)
cookie信息
Cookie: BAIDUID=B2A2C53E6B6CA12D400 
定义访问的主机信息
Host: www.baidu.com【www(主机部分) .baidu.com(域名部分)】 
客户端访问网站的浏览器软件信息(手机 IPhone android)
User-Agent: Chrome/67.0.3396.99

3) 空行
表示请求头所有内容结束

4) 请求主体信息
POST方法调用需要提交的信息:存放到数据库服务器中
注册的信息 
登陆的信息
购物的信息
评论的信息
投票的信息

B HTTP响应报文
1) 响应行(起始行)
HTTP/1.1 200 OK
a) 协议信息
b) 状态码信息 状态码描述信息
200 OK: 请求成功 处理方式:获得响应的内容,进行处理
301 Moved Permanently 永久跳转 第一次访问跳转后,再次访问会直接访问跳转后地址
302 Moved temporary 临时跳转 第一次访问跳转后,在次访问依旧会需要进行访问跳转的服务器
304 cache 图片缓存在客户端本地, 利用缓存进行查看图片(节省网站带宽和网站负载压力) 缓存有时间
403 Forbidden 网站拒绝(黑客)访问(实践)
404 访问的网站信息不存在
500 Internal Server Error 内部服务代码错误(找开发人员)
502 后端节点出现问题,无法进行访问(负载均衡服务器 --- 用户)
503
504 超时访问,后端节点不能很快做出响应(负载均衡服务器 --- 用户)
2) 响应头部
Cache-Control: private 和缓存相关的设置
Connection: Keep-Alive 是否设置为TCP长连接
Content-Encoding: gzip 响应的信息是否进行压缩
Content-Type: text/html 响应的数据类型
Cxy_all: baidu+553422cecf477402ecd4a78eecb35952
Date: Mon, 11 Mar 2019 06:30:11 GMT 响应时间
Expires: Mon, 11 Mar 2019 06:29:14 GMT 缓存上的时间
Server: nginx/1.xx 百度的web服务器所使用的软件名称(BWS) 重点
Set-Cookie: delPer=0; path=/; domain=.baidu.com
????
X-Ua-Compatible: IE=Edge,chrome=1

3) 响应空行

4) 响应主体内容
一般都是代码信息
HTML 静态页面信息 页面有什么都需要用HTML代码编写好
css 定义网页样式 给网页信息进行排版
js 定义页面特效 让网站显示更加好看

3 HTTP协议说明

3.1 HTTP概念

超文本传输协议(HTTP,HyperText Transfer Protocol)
是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。
设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法

3.2 HTTP协议版本

2.0版本:TCP长连接-- 一次连接,实现多次请求,每次可以并发多个请求
1.1版本: TCP长连接-- 一次连接,实现多次请求,每次只能单个请求
1.0版本: TCP短连接-- 一次连接,实现一次请求,断开重连才再次请求

4 HTTP常见响应的状态码信息


		
赞(0)
MySQL学习笔记 » 第20章:网站架构