返回顶部

zhangfd

个人博客,仅供学习使用

导航

HTTP:2 -- 网站服务协议原理

网站服务协议原理

命令总结:

curl www.baidu.com        - 获取百度网页代码,保存为index.html可直接打开
curl -v www.baidu.com     - 显示访问网站的详细过程  *解析过程 >请求 <响应 其余为响应主体

00. 内容说明:

  1. 用户访问网站的流程
  2. HTTP协议的数据包
    HTTP请求报文
    HTTP响应报文
  3. 状态码信息
  4. 请求访问的资源信息
    静态资源/动态资源
  5. 网站好坏评测方法
  6. 常用的网站服务
  7. nginx软件部署

01. ansible批量管理回顾:

  1. ansible批量管理软件概念
  2. ansible批量管理软件组成
    a 软件的模块
    b 软件主机清单
    c 软件剧本编写
  3. ansible软件部署安装
    基于秘钥的远程连接---三件事
  4. ansible模块使用方法
    ansible 主机信息 -m 模块名 -a "模块参数"
  5. ansible主机清单配置方法
    a 利用分组进行配置
    b 设置变量信息管理
    c 利用嵌入方式配置
  6. ansible软件剧本编写方法
    语法规范: 3点
    剧本扩展功能:
    剧本角色功能:整合
- import_tasks: server
when: ansible_ip_address
- import_tasks: client
  1. ansible常见问题总结
    1. 无法远程管理 ping
      秘钥没有合理分发
      主机清单配置有关
      远程服务是否开启
    2. 剧本批量执行
      检查剧本语法
      检查剧本模块应用 --- 尽量不要都使用shell
      剧本执行卡死 --- ansible-playbook xxx -vvvv 显示执行过程

02. 掌握网站页面访问流程

0. 客户端  浏览器输入网址信息点击回车(cnblogs.com/moox)能看到页面,是部署web的一个原因
1. 客户端  完成域名的解析过程(DNS) 
2. 客户端  直接访问相应网站服务器		建立TCP三次握手过程
3. 客户端  访问网站服务器          	发送HTTP请求报文  多次
4. 服务端  响应客户端请求             	回复HTTP响应报文  多次
5. 客户端  浏览器看到网站页面
6. 客户端  结束访问网站过程           	完成TCP四次挥手过程

03. HTTP协议请求和响应过程

http:超文本传输协议(超文本是带有超链接的文本)

HTTP请求报文

  1. 请求行
    请求方法:
    Get --读/看 ---获取/拿过来
    post --写/提交
    请求信息: index.html(首页文件) oldboy.jpg
    请求协议: http 1.1
    HTTP: 1.0 TCP短连接---单个客户请求是单一的(三次握手建立后,请求一次结束就四次挥手)
    HTTP: 1.1 TCP长连接--单个客户请求是很多的,使用超时时间限制
    HTTP: 2.0 TCP长连接优化 提高多用户并发(同时)访问的效率

  2. 请求头
    请求主机信息

  3. 空行

  4. 请求主体
    使用get方法时, 没有请求主体信息
    使用post方法时,具有请求主体内容

HTTP响应报文

  1. 起始行
    状态码信息 访问请求是成功响应/失败响应
    面试: 写出几种常见的状态码??
    200--
    403--Forbbid
    404--Not Found
    500--Internal Server Error
    502--Bad Gateway
    503--Service Unavailable
    504--Gateway Timeout
  2. 响应头部
  3. 空行
  4. 响应主体

04. HTTP协议资源信息

URL: 全称为Uniform Resource Location,中文翻译为统一资源定位符
URI: 全称为Uniform Resource Identifier,中文翻译为统一资源标识符

docs.ansible.com/ansible / latest/user_guide/playbooks_reuse_roles.html
URL URI

网站页面静态资源:

要什么给我什么, oldboy.jpg index.html

特点说明:
1) 网页内容是固定不变的,因此,容易被搜索引擎收录(容易被用户找到)(优点)。
2) 因为网页没有数据库的支持,所以在网站制作和维护方面的工作量较大,当网站信息量很大时,
完全依靠静态网页比较困难(缺点)。
3) 网页的交互性较差,在程序的功能实现方面有较大的限制(缺点)。
4) 当客户端向服务器请求数据时,服务器会直接从磁盘文件系统上返回数据(不做任何解析)。

网站页面动态资源:

要什么信息,需要进行查询数据库进行解析后发送给客户端

查看班级人员信息表

班级   人名   年龄   学历
sz-01  张三   18     高中   ---> 数据库中 oldboy=123  <--- post 
sz-01  李四   20     大专	

班级   人员   年龄   学历
代码信息直接调用数据库的内容

特点说明:
1) 采用动态网页技术的网站可以实现更多的功能,如用户注册、用户登录、在线调查、
投票、用户管理、订单处理、发博文等。
2) 动态资源页面会出现 "?" "&"等符号, 不便于被搜索引擎收录
3) 接收到用户请求,需要让动态服务和数据库服务进行处理,响应速度会比较慢

伪静态资源(实质是动态页面)

保留静态页面和动态页面的优点

  1. 可以便于搜索引擎进行收录
  2. 有数据库服务支持,实现网页交互功能

05. 评测网站好坏的指标:

站长之家 https://alexa.chinaz.com/

IP: 根据用户IP地址数量进行统计 300万~400万 一个星期
局域网多个用户访问: 网站服务器只记录一个IP访问 NAT技术--只记录一个公网地址
断电了家用电脑会重新拨号: wan端口--新的公网地址

PV: 页面访问量 700~800万 一个星期
参考值:

UV: 记录独立访客数量
cookie: 标识用户身份信息, 会保存在用户客户端本地 记录在客户端 内存中
session: 记录用户的一些会话操作, eg: 记录用户登录信息 记录在服务端 内存中

网站的并发: (压测技术 1 10 100 1000 10000)
A种理解:网站服务器每秒能够接收的最大用户请求数。
B种理解:网站服务器每秒能够响应的最大用户请求数。
C种理解:网站服务器在单位时间内能够处理的最大连接数。

06. 知识重点梳理:

  1. 用户访问网站流程
    DNS原理
    TCP三次握手四次挥手
  2. HTTP协议的报文结构
    请求报文
    响应报文
  3. 状态码信息
    http协议概念 1.0 1.1 2.0(TCP短连接/长连接)
  4. 资源信息
    URL/URI
    静态资源/动态资源/伪静态资源
  5. 评测网站指标
    IP/PV/UV/并发

扩展了解:

  1. 301跳转和302跳转区别
    301永久跳转,302临时跳转
  2. 总结命令 curl wget
  3. 提前部署安装好nginx服务 yum安装

posted on 2020-04-12 15:15  zhangfd  阅读(277)  评论(0编辑  收藏  举报