zoukankan      html  css  js  c++  java
  • 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安装
  • 相关阅读:
    添加搜索引擎
    理解隐马尔可夫模型(转载)
    全排列合集
    COM使用简介
    KMP算法
    遗传算法(转载)
    退火算法(转载)
    非电信手机获取闪讯密码的一种实现方法
    几个时间控制函数(转载)
    图像处理的Alpha通道
  • 原文地址:https://www.cnblogs.com/moox/p/12685357.html
Copyright © 2011-2022 走看看