socket长连接跟http每秒请求一次哪个更消耗资源
发布于 7 年前 作者 tomoya92 6731 次浏览 来自 问答

RT

14 回复

还用问吗?

@i5ting 我没测试过,所以还真不知道,感觉http更耗

一般来说消耗资源 短轮询〉长轮询〉socket 毕竟每次都要发头文件就挺费资源的

楼上几位回答的都没问题,泛泛的讨论这个也很明显能感觉到谁更消耗资源。 不过很多事情要结合实际场景来决定。如果你是大量的客户端连接,但是每个客户端通信的次数很少,比如就两三次。那么用http更划算。如果是每个客户端和服务器连接之后都会有很多的通信往来那就用socket。

http一般来说是基础tcp的应用层协议

socket是编程语言基于tcp/udp抽象封装接口,是用来操作tcp/udp的一个api

首先两者没有必然关系 socket可以建立一次性tcp连接用来实现http协议,http协议也可以不用socket实现

http的简单过程是 tcp建立=> Client发送请求=>server返回处理结果=>(不一定传输一次)=>断开 socket的过程是 tcp建立=> Client<=>server(相互通信/或者啥也不干)=>断开退出

所以你无法严谨的比较它们谁更消耗资源,因为压根都是一个tcp通信的建立,socket干啥都不知道,无法武断的比较谁更消耗资源

@stonephp 这才是正解,所以摩拜就没用长连接做解锁

@hyj1991 那摩拜用的是什么

@hyj1991 单车定时向server发送请求,来判断是否有用户正在解锁?

@hyj1991 用的短信。。。。好惊讶!!!

@hyj1991 用的虚拟号码?

@stonephp @SvenZhao 你们说的对,确实要看应用场景,谢谢各位的回复

回到顶部