http是基于tcp/ip的,那么它也是可以具有和服务器双向通信的能力的。我们为什么不升级http,搞个http x.1


直接评论就好了,你说的对,这个问题没价值,我会删掉,不用踩,没用,无益于我,无益于你,只是无聊。

为什么不升级http而要有websocket
如题,是我什么地方想错了吗?
就可行性,可不可以这样呢。

websocket 网站安全 HTML JavaScript http

ROSE女王 9 years, 4 months ago

现在有很多应用确实在渐渐的使用长连接,这个长链接有的支持双向通讯,比如QQ微信,有的部分支持,比如Google的spdy协议,以及在spdy协议基础上提出的http2.0协议。
Google早就已经把自己旗下的服务升级到能支持http2和spdy,你用新版的chrome访问就能看到相应的标志。
再来说说spdy,使用长链接,多个请求能共用同一个连接,还支持服务端推送技术。

Mariya answered 9 years, 4 months ago

简单来说,不可行。 http 是给 web服务 使用的协议,而 web服务 什么最重要?当然是并发数了。如果采用 tcp 那样的有状态协议,只要一个用户开着浏览器,那么他与服务器的 http 连接就不会被切断。但是一个服务器能够同时开启的连接数是有限制的,这样的话这个网站就变成专门为这几百个人服务的了,即使靠增加服务器的方法,每增加一台服务器也就增加几百人而已。试想在这种情况下, google twitter 这些每秒访问量达到几百万上千万级别的网站怎么办?或者说一个接地气的例子,每当长假或年底的时候,每个人应该都很清楚 12306 是什么样一种蛋疼的状况吧?这种情况又该怎么办?

Websocket 确实是有状态的,和 TCP 很像,但它的出现不是为了取代 http ,是为了当确实需要在网页中实现有状态连接时(例如网游)可以使用的一种辅助技术。


不明白为什么会被踩,如果我说的不对,请给我留言讨论

注册你妹啊 answered 9 years, 4 months ago

Your Answer