【学习打卡】第七天 HTTP协议原理+实践 ,Web开发工程师必学
2022/8/9 4:22:45
本文主要是介绍【学习打卡】第七天 HTTP协议原理+实践 ,Web开发工程师必学,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第一模块
学习课程名称:HTTP协议原理+实践 ,Web开发工程师必学
章节名称:Nginx代理以及面向未来的HTTP
讲师姓名:Jokcy
##第二模块
课程内容概述:
- Nginx安装和基础代理配置
- Nginx代理配置和代理缓存的用处
- 使用Nginx部署HTTPS服务
- HTTP2的优势和Nginx配置HTTP2的简单使用
第三模块
Nginx概述
Nginx是一个高性能的HTTP和反向代理服务器
是一款轻量级的高性能的web服务器/反向代理服务器/电子邮件代理服务器
单台物理服务器可支持30000~50000个并发请求
实际上仅支持20000~25000个并发请求
Nginx和Apache相对的优点
1.nginx相对于apache的优点:
轻量级,同样起web服务,比apache占用更少的内存及资源
抗并发,nginx处理请求是异步非阻塞的,而apache是阻塞型的在高并发下,nginx能保持低资源低消耗高性能
高度模块化的设计,编写模块相对简单
2.apache相对于nginx的优点∶
Rewrite比nginx的rewrite强大 (rewrite的主要功能就是实现统一资源定位符URL的跳转)
模块多,基本想到的都可以找到
少bug, nginx的bug相对较多
超稳定
Nginx配置代理缓存
使用proxy_cache_path来配置一个cache, 示例
proxy_cache_path cache levels=1:2 keys_zone=my_cache:10m
这里的 cache 是缓存文件的路径
windows使用相对路径,为nginx安装目录下
mac可以设置自己的路径,如/var/cache/你的目录
levels 表示是否要创建多级文件夹
因为cache目录声明之后会用于很多代理服务器
默认所有代理会存在于一个目录中导致查找速度变慢
分级文件会优化速度
keys_zone 表示代理缓存指定名称
查找缓存时用的名称和缓存大小声明
Nginx部署HTTPS服务
配置证书及安装ssl模块
HTTP2 的优势
新的二进制格式(Binary Format),HTTP1.x 的解析是基于文本。基于文本协议的格式解析存在天然缺陷,文本的表现形式有多样性,要做到健壮性考虑的场景必然很多,二进制则不同,只认 0 和 1 的组合。基于这种考虑 HTTP2.0 的协议解析决定采用二进制格式,实现方便且健壮。
多路复用(MultiPlexing),即连接共享,即每一个 request 都是是用作连接共享机制的。一个 request 对应一个 id,这样一个连接上可以有多个 request,每个连接的request 可以随机的混杂在一起,接收方可以根据 request 的 id 将 request 再归属到各自不同的服务端请求里面。
header 压缩,HTTP1.x 的 header 带有大量信息,而且每次都要重复发送,HTTP2.0 使用 encoder 来减少需要传输的 header 大小,通讯双方各自 cache 一份 header fields 表,既避免了重复 header 的传输,又减小了需要传输的大小。
服务端推送(server push),同 SPDY 一样,HTTP2.0 也具有 server push 功能。
分帧传输:可以并发发送不同请求。
第四模块
这篇关于【学习打卡】第七天 HTTP协议原理+实践 ,Web开发工程师必学的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Java中定时任务实现方式及源码剖析
- 2024-11-24Java中定时任务实现方式及源码剖析
- 2024-11-24鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)
- 2024-11-24细说敏捷:敏捷四会之每日站会
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解