0
点赞
收藏
分享

微信扫一扫

保障AI时代的图像安全:揭示解决虚假图片危机的三种策略

大雁f 2023-07-14 阅读 13

WebSocket理解

WebSocket

定义

与HTTP关系

相同点:

不同点:

联系

WebSocket在建立握手时,数据是通过http传输
WebSocket建立后,在真正传输数据时不需要http协议

总体过程

HTTP问题

长轮询

客户端发起长轮询,若服务端数据无变更,会hold住请求,直到服务端数据发生变更或一段时间后再进行下一次轮询
长轮询解决http不能实时更新的弊端,因为这个时间很短,发起请求即处理请求返回响应,实现了“伪·长连接”
它主要解决的就是推送延迟和服务器压力
推动延迟,服务端数据发生变更后,长轮询结束,立刻返回响应给客户端。
服务器压力,长轮询的间隔期一般很长,例如 30s、60s,并且服务端 hold 住连接不会消耗太多服务端资源。

Ajax轮询

定义:
规定每隔一段时间就由客户端发起一次请求,查询有没有新消息,如果有,就返回,如果没有等待相同的时间间隔再次询问
解决了http不能实时更新的弊端,因为这个时间很短,发起请求即处理请求返回响应,把这个过程放大n倍,本质上还是request = response
总的来说就是解决推送延迟、服务器压力、推送延迟和服务器压力无法中和
推送延迟
服务端压力
推送延迟和服务端压力无法中和,降低轮询的间隔,延迟降低,压力增加;增加轮询的间隔,压力降低,延迟增高

WebSocket特点

在这里插入图片描述
WebSocket有以下特点:

  • 是真正的全双工方式,建立连接后客户端与服务器端是完全平等的,可以互相主动请求。而HTTP长连接基于HTTP,是传统的客户端对服务器发起请求的模式。
  • HTTP长连接中,每次数据交换除了真正的数据部分外,服务器和客户端还要大量交换HTTP header,信息交换效率很低。Websocket协议通过第一个request建立了TCP连接之后,之后交换的数据都不需要发送 HTTP header就能交换数据,这显然和原有的HTTP协议有区别所以它需要对服务器和客户端都进行升级才能实现(主流浏览器都已支持HTML5)
举报

相关推荐

0 条评论