当前位置: 首页 > news >正文

如何用虚拟主机建设网站企业cms免费模板

如何用虚拟主机建设网站,企业cms免费模板,网络公司网站案例,郑州app外包公司Websockt概念 Websockt是一种网络通信协议,允许客户端和服务器双向通信。最大的特点就是允许服务器主动推送数据给客户端,比如股票数据在客户端实时更新,就能利用websocket。 Websockt和http协议一样,并不是设置在linux内核中&a…

Websockt概念

Websockt是一种网络通信协议,允许客户端和服务器双向通信。最大的特点就是允许服务器主动推送数据给客户端,比如股票数据在客户端实时更新,就能利用websocket。

Websockt和http协议一样,并不是设置在linux内核中,而是通过用户空间的应用程序来实现和处理。

http网址的格式:协议://域名/路径。如:Example Domain。

websocket网址的格式:ws://域名/路径 或 wss://域名/路径。如:ws://www.example.com/chat。

Websocket与http的关联

1、基于HTTP协议的握手:WebSocket协议的握手过程是基于HTTP协议的。在建立WebSocket连接之前,客户端和服务器之间会进行一次HTTP握手,这是为了协商和确认使用WebSocket协议进行通信。

2、共享同一端口:WebSocket协议使用HTTP协议的80端口(或443端口,用于加密连接),这意味着WebSocket连接可以通过与HTTP服务器共享同一端口来进行通信。这样可以避免在网络上开启新的端口,降低了网络配置的复杂性。

Websocket与http对比

优点

实时性:WebSocket支持双向通信,服务器可以主动推送数据给客户端,实现实时更新和推送功能。

较低的延迟:WebSocket建立一次连接后,可以保持长时间的连接状态,避免了每次请求都要建立新的连接的开销,从而减少了延迟。

较小的数据开销:WebSocket使用二进制消息传输,相对于HTTP的文本数据传输,可以减少数据包的大小,降低网络传输开销。

更少的网络流量:由于WebSocket采用长连接,不需要频繁的请求和响应,可以减少网络流量和负载。

缺点

兼容性问题:WebSocket是HTML5的一部分,相对于HTTP,对于一些低版本的浏览器和服务器来说,支持程度可能较低。

需要服务器端支持:WebSocket需要服务器端支持实现双向通信,而有些服务器可能没有提供WebSocket的支持。

协议复杂性:相对于HTTP来说,WebSocket的协议相对复杂一些,实现和维护的成本可能较高。

Websocket的握手

与http握手的区别

下图是websocket的握手报文案例。与http握手报文的核心区别是两处红框部分是否是Upgrade和websocket。

Websocket的握手流程

1.浏览器发送握手报文。

2.服务器解析出sec-websocket-key

3.sec-websocket-key与GUID字符串联合成新字符串。

GUID是一组固定的字符串,在websocket的官方文档里有规定。

4.用哈希算法对新字符串进行哈希

5.对哈希值转为base64格式,生成value

6.把value配握手返回报文中进行返回

仿股票数据推流

股票数据的推流的特点:客户端连接上服务器之后,服务器就会定时往客户端发送更新过的股票数据。

下图实现了一个简易版的服务器,能定时给连接上的客户端推送数据,当客户端尝试发送数据的时候会断开连接。

import asyncio
import websocketsasync def push_price(websocket, path):while True:price = "price = 299.9"await websocket.send(price)try:# 接收消息message = await asyncio.wait_for(websocket.recv(), timeout=1)# 如果接收到消息,立即断开连接if message:await websocket.close()breakexcept:pass
start_server = websockets.serve(push_price, None, 8765) //返回一个协程对象//该对象的任务函数是push_priceasyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()

客户端

<html>
<head><script>let ws;function doConnect(addr) {ws = new WebSocket("ws://" + addr);ws.onopen = () => {document.getElementById("log").value += (" Connection opened\n");};ws.onmessage = (event) => {document.getElementById("log").value += (" Receive: " + event.data + "\n\n"); // JSON.stringify()};ws.onclose = () => {document.getElementById("log").value += (" Connection closed\n");};}document.addEventListener("DOMContentLoaded", (event) => {document.getElementById("btn_connect").onclick = () => {let server_addr = document.getElementById("server_addr").value;doConnect(server_addr);};document.getElementById("btn_send").onclick = () => {let msg = document.getElementById("message").value;ws.send(msg);document.getElementById("log").value += (" Send: " + msg + "\n");};});</script>
</head>
<body><div id="header"><h1 align="left">WebSocket Client</h1>Server: <input id="server_addr" type="text" value="192.168.232.132:8888"><input id="btn_connect" type="button" value="Connect!"><br/><br/>Message: <input id="message" type="text" value=""><input id="btn_send" type="button" value="Send"><br/><br/><textarea cols="250" id="log" rows="50"></textarea>
</div>
</body>
</html>
~                                                                                                                                                                                                            
~                                                                                                                                                                                                            
~         

运行结果

http://www.yayakq.cn/news/678226/

相关文章:

  • 佛山专业网站建设哪家好中国城乡建设部官网
  • 山东住房建设厅官网站首页品质好物推荐怎么上
  • 网站后台地址忘记了重庆市有几个区
  • 建设网站的公司wordpress不兼容ie
  • 青岛李沧网站建设传奇网站传奇
  • 哪个网站做废旧好福建建设资格执业注册管理中心网站
  • 批量建站怎么赚钱适合美工的网站
  • 精品课程网站设计创办公司需要多少资金
  • 网页设计师都在什么网站上面找素材在线crm网站
  • 网站开发建设流程网站开发人才培养目标
  • 网站制作公司 云南瑞安网
  • 书店网站模板东阿做网站推广
  • 分子信标探针在线设计网站怎样申请一个免费网站
  • wordpress多站点模式江阴服装外贸现状
  • 重庆网站建设 重庆网站制作2018一级a做爰片免费网站
  • 电商网站开发视频模板免费制作
  • 温州外贸网站设计宣传册设计与制作软件
  • 免费建网站那个好怎么用自助网站
  • jsp网站建设项目实战网站降权分析
  • 曲周企业做网站推广wordpress英文企业主题下载
  • 中卫网站网站建设wordpress 主题 下载
  • 信息发布网站开发中企动力是干什么的
  • 青岛网站建设青岛博采网络建设部网站网站建设
  • 网站开发商城实例平面设计接单网站有哪些
  • 免费织梦网站模板电子商务的网站案例
  • 网页设计作品到哪个网站秦皇岛吧 百度贴吧
  • 石家庄网站网站建设南京前十名传媒广告公司
  • 模仿网站 素材哪里来黄岩城市建设发展集团网站
  • 科技网站建设的调研能自己在家做网站吗
  • 晋中建设局网站建设工程合同属于