欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

websocket可以(或者说能够)代替ajax吗?

程序员文章站 2022-04-05 12:59:18
...
本人主力语言是PHP,这一阵有个想法,web应用,在不考虑兼容性的前提下,可以用socket来代替ajax的工作吗?

这样做(或者说该不该这样做)可以吗?
性能会否提升? 消耗会增加吗?

希望各位可以帮我解答一下(希望我这个不是一个很蠢的问题…),谢谢。

回复内容:

本人主力语言是PHP,这一阵有个想法,web应用,在不考虑兼容性的前提下,可以用socket来代替ajax的工作吗?

这样做(或者说该不该这样做)可以吗?
性能会否提升? 消耗会增加吗?

希望各位可以帮我解答一下(希望我这个不是一个很蠢的问题…),谢谢。

可以,页面这块性能肯定是有提升的,因为 Socket 对于 HTTP 有自己的有点,就是可以长时间 Hold 住,并且没有头部内容,这些好处对于性能来说都是有显著提升的。消耗来说,对服务器的消耗肯定会大一点,毕竟 N 个访问,你就要 Hold 住 N 个链接,这个事实摆在那里。

在不考虑兼容性的情况下。

  • 如果你对实时性的要求比较高的话,可以考虑用websocket,因为延时低了许多,比如做一些消息推送等功能,而且频繁通讯的话保持一个连接更好一点。
  • 如果只是不定时的做一个查询感觉应该还是用ajax就可以了吧。

个人意见,仅供参考~

对呢,现在两种需求都存在,为了提高实时性只能缩小轮询的时间,服务器也是吃不消。

所以想到socket上面去了,问题是之前没试过,也不知道实际消耗如何,没什么底