我正在学习HTTP/2协议.它是一个带有小消息帧的二进制协议.它允许通过单个TCP连接进行流复用.从概念上讲,它似乎与WebSockets非常相似.
是否有计划废弃websockets并用某种无头HTTP/2请求和服务器启动的推送消息替换它们?或者WebSockets是否会补充HTTP/2?
HTTP/1.1已经为网络服务了十五年以上,但它的年龄开始显现.
任何人都可以解释HTTP 1.1和2.0之间的主要区别是什么?
传输协议有什么变化吗?
目标是引入更好的延迟和网络吞吐量的传输和应用层协议.目前,该应用程序使用REST与HTTP/1.1,我们遇到高延迟.我需要解决这个延迟问题,我可以使用gRPC(HTTP/2)或REST/HTTP2.
HTTP/2:
我知道上述所有优点.问题1:如果我使用REST/HTTP/2,我相信,与使用HTTP/1.1的REST相比,我将获得显着的性能提升,但这与gRPC(HTTP/2)相比如何?
我也知道gRPC使用proto buffer,这是用于在线路上传输结构化数据的最佳二进制序列化技术.Proto缓冲区还有助于开发一种与语言无关的方法.我同意这一点,我可以使用graphQL在REST中实现相同的功能.但我关注的是序列化问题:问题2:当HTTP/2实现这个二进制特性时,使用proto缓冲区是否在HTTP/2之上提供了额外的优势?
问题3:在流媒体,双向用例方面,gRPC(HTTP/2)如何与(REST和HTTP/2)进行比较?
有这么多的博客/视频出在与像(REST和HTTP/1.1)比较GRPC(HTTP/2)互联网这个.如前所述,我想知道比较GRPC(HTTP/2)和(REST与HTTP/2)的差异和好处.
使用新的HTTP/2协议,重复HTTP请求到同一服务器所产生的开销已大大减少.
考虑到这一点,缩小和连接JavaScript/CSS文件以及将图像组合成精灵还有任何显着的性能优势吗?或者,当使用HTTP/2时,这些做法是否不再有用?
目前是否有可能获得node.js HTTP/2(HTTP 2.0)服务器?和http 2.0版的express.js?
我想以双向流方式开发客户端 - 服务器应用程序.
什么是更合适的技术 - grpc或websocket?
有谁知道支持HTTP/2.0的Tomcat的最低版本是什么?我一直在他们的网站上的任何地方寻找,我找不到任何有关这方面的细节.
我有一个在nginx代理后面运行的node.js服务器.node.js在端口3000上运行HTTP 1.1(无SSL)服务器.两者都在同一服务器上运行.
我最近设置nginx使用HTTP2和SSL(h2).似乎HTTP2确实启用并正常工作.
但是,我想知道代理连接(nginx < - > node.js)使用HTTP 1.1的事实是否会影响性能.也就是说,我在速度方面缺少HTTP2优势,因为我的内部连接是HTTP 1.1?