早上 腾讯云发了个关于 http2 的帖子[HTTP 2 的新特性你 get 了吗?]( https://www.v2ex.com/t/355553 )
看完之后很激动啊,自己的测试小站可以先搞起来啊。
之后就开始寻思,当前的情况是这样的:阿里一台服务器当作代理服务器,把所有请求代理到本地服务器。查了下 http2.0 在 nginx 下只要升级下 openssl ,装一个模块就可以了,然后就有个疑问:本地的服务器需要也支持 http2.0 吗?代理的原理是怎样的?
不懂就先百度,百度一圈好气啊,根本找不到答案,刚想发个帖请教下 V 友。忽然想到如果下面评论都是教我如何 google 的那多尴尬。随意 google 了下瞬间柳暗花明。
[The HTTP/2 Module in NGINX]( https://www.nginx.com/blog/http2-module-nginx/ )
里面写得很清楚啊, PPT 也写得很赞, NGINX 靠谱!
在最后的 Q&A 找到了答案
Q: Will you support HTTP/2 on the upstream side as well, or only support HTTP/2 on the
client side?
A: At the moment, we only support HTTP/2 on the client side. You can ’ t configure
HTTP/2 with proxy_pass. [Editor – In the original version of this post, this
sentence was incorrectly transcribed as “ You can configure HTTP/2 with proxy_pass.
” We apologize for any confusion this may have caused.]
But what is the point of HTTP/2 on the backend side? Because as you can see from
the benchmarks, there ’ s not much benefit in HTTP/2 for low ‑ latency networks such
as upstream connections.
Also, in NGINX you have the keepalive module, and you can configure a keepalive
cache. The main performance benefit of HTTP/2 is to eliminate additional handshakes,
but if you do that already with a keepalive cache, you don ’ t need HTTP/2 on the
upstream side.
刚看的时候也好气啊,为什么 http2 这么叼(看了腾讯云之后的感想)你却说他是包装 http1 的运输层?看到后来才感觉腾讯云里的这篇文章( https://www.qcloud.com/community/article/541321?fromSource=gwzcw.93353.93353 )可能更加的片面,官方博客的更加中肯。为这风格点赞,差点就跟了风。
前面 PPT 中有张图来展示 first painting http1.1>http2>https (有些企业确实为了访问速度放弃了 https ), 那这样一来,确实是不需要本地服务器 http2.0 ,明显用 http 比较快。
结论:这样一来,我的代理服务器改 http2 就变得简单了,只需要代理服务器 nginx 的 docker 镜像升级一下,其它的都不变就 OK 。暗爽
不知以上想法有没错误,还没有具体实践,如有纰漏请指正万分感谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.