- 前言
- 1.http 协议的各个版本和区别
- 2.比较nginx 和 apache 的特性
- 3.nginx 的功能
- 4.常见的nginx 性能优化方法
- 5.location的优先级
- 6.rewrite 中 redirect,permanent, break和last区别
- 7.nginx的常见模块
- 8.nginx的反向代理的调度算法
- 9.nginx的反向代理的调度算法
- 10.比较nginx,haprorxy和LVS的区别
- 11.访问web页面时出现502和504错误,请简述—下排查思路
- 12.有同事反应,网站访问速度很慢,有时候会出现打不开网站的情况,刷新等待好长时间后又正常打开,请分析并说一说故障排查思路?
- 13.请解释Nginx是如何连接PHP进行页面解析的
- 14.上家公司的服务各做了哪些优化,NGINX做了哪些优化
- 15.请描述Nginx和Tomcat之间的数据传输过程
- 16.为什么Nginx的并发能力强,
- 17.为什么nginx性能好?
- 18.epoll和select的区别
- 19.LVS和Nginx七层代理的区别
- 20.什么是keep-alive
1.http 协议的各个版本和区别
1.多路复用
HTTP2.0使用了多路复用的技术,做到同一个连接并发处理多个请求,而且并发请求的数量比HTTP1.1大了好几个数量级。
当然HTTP1.1也可以多建立几个TCP连接,来支持处理更多并发的请求,但是创建TCP连接本身也是有开销的。
TCP连接有一个预热和保护的过程,先检查数据是否传送成功,一旦成功过,则慢慢加大传输速度。因此对应瞬时并发的连接,服务器的响应就会变慢。所以最好能使用一个建立好的连接,并且这个连接可以支持瞬时并发的请求。
2.数据压缩
HTTP1.1不支持header数据的压缩,HTTP2.0使用HPACK算法对header的数据进行压缩,这样数据体积小了,在网络上传输就会更快。
3.服务器推送
当我们对支持HTTP2.0的web server请求数据的时候,服务器会顺便把一些客户端需要的资源一起推送到客户端,免得客户端再次创建连接发送请求到服务器端获取。这种方式非常合适加载静态资源。
服务器端推送的这些资源其实存在客户端的某处地方,客户端直接从本地加载这些资源就可以了,不用走网络,速度自然是快很多的。