CN206712840U - 一种浏览器与设备的实时通讯系统 - Google Patents
一种浏览器与设备的实时通讯系统 Download PDFInfo
- Publication number
- CN206712840U CN206712840U CN201621072507.9U CN201621072507U CN206712840U CN 206712840 U CN206712840 U CN 206712840U CN 201621072507 U CN201621072507 U CN 201621072507U CN 206712840 U CN206712840 U CN 206712840U
- Authority
- CN
- China
- Prior art keywords
- browser
- equipment
- server
- request
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
本实用新型提出一种浏览器与设备的实时通讯系统,包括服务器、浏览器、设备、适配器;所述浏览器、所述设备分别与所述服务器建立连接,当所述浏览器向所述设备发起数据请求时,所述浏览器把数据请求发送给所述服务器,所述服务器将数据请求转发给对应的所述设备;当所述设备向所述浏览器发起数据请求时,所述设备把数据请求发送给所述服务器,所述服务器将数据请求转发给对应的所述浏览器;在所述的浏览器的一端设置有所述适配器,所述适配器用于动态监听所述浏览器的内核版本并根据监听到的所述浏览器内核版本自动选择连接方式。本实用新型能够实现浏览器与设备的实时通讯,并且使连接维护成本与调试成本低、连接质量好。
Description
技术领域
本实用新型涉及浏览器与设备通讯领域,特别是涉及一种浏览器与设备的实时通讯系统。
背景技术
浏览器与服务器通讯以前是通过Http协议进行的数据交互,即浏览器发起数据请求,服务器响应请求,连接中断,直到下次浏览器发起请求才再次建立连接。浏览器和服务器不能维持持久化的数据连接,所以浏览器和服务器不能构建起实时通讯的通道。
服务器与设备通讯是基于TCP/IP协议的,设备和服务器的通讯是持久化连接,现阶段可以满足设备到服务器的实时通讯,但是设备向服务器发送请求数据,服务器没有和浏览器建立起持久化连接,不能够把设备数据推送到指定浏览器上。
现阶段解决浏览器与服务器的持久化连接有三种方案:
第一是长连接方式,即浏览器启动即向服务器发起数据请求,浏览器拿到数据请求不作返回,直到有和浏览器的通讯诉求时候再返回数据。浏览器拿到数据后马上再发起数据请求,等待服务器返回数据。这种方式最大的缺点是对服务器的性能开销浪费很大,长连接方式底层实现仍然是基于http协议,保持长连接的过程中实际上大部分时间是没有数据交互的,维护连接成本很大。
第二种是WebSocket方式,即利用Html5的新特性,实现浏览器和服务器的双工通讯。但是WebSocket需要浏览器支持html5,现阶段仍然有很多浏览器对html5的支持不好。
第三种是利用第三方插件实现持久连接,例如Flash中的XMLSocket,这种方式由于利用了其他技术,增加了技术复杂度,开发调试成本十分高。
由于现有浏览器与服务器的持久化连接技术存在维护成本与调试成本高、连接质量差等诸多不足,如何设计一种能够实现浏览器与设备的实时通讯,并且连接维护成本与调试成本低、连接质量好的新的系统,成为人们亟待解决的问题。
实用新型内容
为了解决现有技术的不足,本实用新型意在提出一种浏览器与设备的实时通讯系统,以解决上述问题,一方面降低连接维护成本,一方面保证连接的质量,同时降低调试成本。
本实用新型提出一种浏览器与设备的实时通讯系统,包括服务器、浏览器、设备、适配器;
所述浏览器、所述设备分别与所述服务器建立连接,当所述浏览器向所述设备发起数据请求时,所述浏览器把数据请求发送给所述服务器,所述服务器将数据请求转发给对应的所述设备;当所述设备向所述浏览器发起数据请求时,所述设备把数据请求发送给所述服务器,所述服务器将数据请求转发给对应的所述浏览器;
在所述的浏览器的一端设置有所述适配器,所述适配器用于动态监听所述浏览器的内核版本并根据监听到的所述浏览器内核版本自动选择连接方式。
进一步地,所述适配器用于动态监听打开的所述浏览器是支持WebSocket方式还是长连接方式,以进行持久化连接。
进一步地,还包括浏览器连接单元、设备连接单元;
当所述浏览器和所述设备与所述服务器建立连接时,所述服务器会分配内存用以存储所述浏览器连接单元和所述设备连接单元;当所述浏览器向所述设备发起数据请求时,所述服务器通过所述设备连接单元找到对应的所述设备,当所述设备向所述浏览器发起数据请求时,所述服务器通过所述浏览器连接单元找到对应的所述浏览器。
进一步地,在所述设备连接单元和所述浏览器连接单元中,分别具有一支线程,所述线程用以保证连接的稳定性。
进一步地,所述浏览器与所述服务器的连接状态通过SessionID进行记录并将SessionID存储在所述浏览器连接单元中,所述设备与所述服务器的连接状态通过设备编号标记连接并将所述设备编号存储在所述所述设备连接单元中。
进一步地,所述服务器包括服务端服务器和客户端服务器,所述服务端服务器用于处理连接请求,所述客户端服务器用于转发数据请求。
进一步地,所述服务器还包括协议适配模块,所述协议适配模块作为不同协议的解释器用以实现跨协议数据通信。
进一步地,所述设备和所述服务器基于TCP/IP协议进行通讯。
应用本实用新型,可实现如下有益效果:
(1)本实用新型在浏览器端设置了适配器,能够根据浏览器选择不同的连接方式,既有效的利用了服务器资源又保证了所有浏览器的兼容性。
(2)通过服务器转发机制实现了双工通讯,保证了数据通讯的实时性。
(3)浏览器和设备与服务器的连接采用内存存储,由于连接会频繁被应用,放到内存中能够提高程序性能。
附图说明
图1是本实用新型的一个浏览器与设备的实时通讯系统结构原理图。
附图中的附图标记如下:
1、浏览器;2、适配器;3、服务器;4、设备;
11、浏览器连接单元;41、设备连接单元。
具体实施方式
下面结合附图具体说明本实用新型的实施方式。以下描述用于揭露本实用新型以使本领域技术人员能够实现本实用新型。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。
如图1所示,一种浏览器与设备的实时通讯系统,包括浏览器1、适配器2、服务器3、设备4。浏览器1、设备4分别与服务器3建立连接,当浏览器1向设备4发起数据请求时,浏览器1把数据请求发送给服务器3,服务器3将数据请求转发给对应的设备4;当设备4向浏览器1发起数据请求时,设备4把数据请求发送给服务器3,服务器3将数据请求转发给对应的浏览器1。
如图1,在浏览器1的一端设置有适配器2,适配器2用于动态监听浏览器1的内核版本,即适配器2用于动态监听打开的浏览器1是支持WebSocket方式还是支持长连接方式,并自动适应不同方式进行浏览器1与服务器3的持久化连接。浏览器1打开后会自动向服务器3发起数据请求,服务器3收到数据请求后分配一片内存区域用以存储浏览器连接单元11,浏览器连接单元11用以记录每个浏览器1的SessionID和连接方式,每个浏览器1的SessionID记录了该浏览器1与服务器3的连接。
见图1,当设备4需要与服务器3连接时,设备4向服务器3发起数据请求,设备4与服务器3建立连接时服务器3通过设备编号标记连接并且分配一片内存用于存储设备连接单元41,设备连接单元41中记录了Socket连接和设备编号。
如图1所示,当浏览器1对设备4进行数据请求,浏览器1通过适配器2找到合适的连接方式,然后把数据请求发送给服务器3,服务器3从内存中的设备连接单元41中找到请求的设备4并转发数据请求到设备4。当设备4对浏览器1进行数据请求时,将数据请求发送给服务器3,服务器3通过浏览器连接单元11找到所要请求的浏览器1并转发数据请求到对应的浏览器1。
从图1可见,在设备连接单元41和浏览器连接单元11中各添加一支线程用以保证连接的稳定性。
见图1,服务器3可以拓展为服务端服务器和客户端服务器,其中一个处理连接请求,另一个用于转发请求,进而用于保证连接和转发的稳定性和及时性。
如图1所示,服务器3还具有协议适配模块,协议适配模块作为不同协议的解释器以实现跨协议数据通信。
见图1,设备4和服务器3基于TCP/IP协议进行通讯。
需要说明的是,本领域的技术人员应该了解以上参照附图所描述的各个实施例仅用以说明本实用新型而非限制本实用新型的范围,本领域的普通技术人员应当理解,在不脱离本实用新型的精神和范围的前提下对本实用新型进行的修改或者等同替换,均应涵盖在本实用新型的范围之内。
Claims (8)
1.一种浏览器与设备的实时通讯系统,包括服务器、浏览器、设备、适配器;
所述浏览器、所述设备分别与所述服务器建立连接,当所述浏览器向所述设备发起数据请求时,所述浏览器把数据请求发送给所述服务器,所述服务器将数据请求转发给对应的所述设备;当所述设备向所述浏览器发起数据请求时,所述设备把数据请求发送给所述服务器,所述服务器将数据请求转发给对应的所述浏览器;
在所述的浏览器的一端设置有所述适配器,所述适配器用于所述浏览器与所述服务器根据所述浏览器内核版本自动选择连接方式。
2.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,所述适配器用于动态监听打开的所述浏览器是支持WebSocket方式还是支持长连接方式,以进行持久化连接。
3.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,还包括浏览器连接单元、设备连接单元;
当所述浏览器和所述设备与所述服务器建立连接时,所述服务器会分配内存用以存储所述浏览器连接单元和所述设备连接单元;当所述浏览器向所述设备发起数据请求时,所述服务器通过所述设备连接单元找到对应的所述设备,当所述设备向所述浏览器发起数据请求时,所述服务器通过所述浏览器连接单元找到对应的所述浏览器。
4.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,在所述设备连接单元和所述浏览器连接单元中,分别具有一支线程,所述线程用以保证连接的稳定性。
5.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,所述浏览器与所述服务器的连接状态通过SessionID进行记录并将SessionID存储在所述浏览器连接单元中,所述设备与所述服务器的连接状态通过设备编号标记连接并将所述设备编号存储在所述设备连接单元中。
6.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,所述服务器包括服务端服务器和客户端服务器,所述服务端服务器用于处理连接请求,所述客户端服务器用于转发数据请求。
7.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,所述服务器还包括协议适配模块,所述协议适配模块作为不同协议的解释器用以实现跨协议数据通信。
8.如权利要求1所述的浏览器与设备的实时通讯系统,其特征在于,所述设备和所述服务器基于TCP/IP协议进行通讯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201621072507.9U CN206712840U (zh) | 2016-09-22 | 2016-09-22 | 一种浏览器与设备的实时通讯系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201621072507.9U CN206712840U (zh) | 2016-09-22 | 2016-09-22 | 一种浏览器与设备的实时通讯系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN206712840U true CN206712840U (zh) | 2017-12-05 |
Family
ID=60471238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201621072507.9U Active CN206712840U (zh) | 2016-09-22 | 2016-09-22 | 一种浏览器与设备的实时通讯系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN206712840U (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684111A (zh) * | 2018-12-28 | 2019-04-26 | 安徽同徽网络技术有限公司 | 消息推送方法、消息推送系统和计算机可读存储介质 |
CN109697215A (zh) * | 2018-12-14 | 2019-04-30 | 安徽同徽网络技术有限公司 | 数据采集方法、数据采集系统和非易失性计算机存储介质 |
-
2016
- 2016-09-22 CN CN201621072507.9U patent/CN206712840U/zh active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109697215A (zh) * | 2018-12-14 | 2019-04-30 | 安徽同徽网络技术有限公司 | 数据采集方法、数据采集系统和非易失性计算机存储介质 |
CN109684111A (zh) * | 2018-12-28 | 2019-04-26 | 安徽同徽网络技术有限公司 | 消息推送方法、消息推送系统和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105159781B (zh) | 调节智能终端应用网速的方法、装置和智能终端 | |
CN101917350B (zh) | 一种Linux下基于网卡驱动的零拷贝以太网报文捕获及发送的实现方法 | |
CN101064910B (zh) | 一种基于呼叫控制的端对端断点续传方法 | |
CN101478472B (zh) | 一种Socket数据传输处理方法及装置 | |
CN206712840U (zh) | 一种浏览器与设备的实时通讯系统 | |
CN103856440A (zh) | 一种基于分布式总线的消息处理方法、服务器和系统 | |
CN104702627B (zh) | 一种基于报文分类的同步并发通信方法及系统 | |
CN101426181A (zh) | 具有即时互动的智能化多媒体信息手机浏览系统及实现方法 | |
CN105827687A (zh) | 集群管理方法及其管理系统 | |
CN104503894A (zh) | 分布式服务器状态实时监测系统及方法 | |
CN110233707A (zh) | 一种网关及其数据传输方法 | |
CN103260089A (zh) | 一种远程查看iptv机顶盒实时日志的方法 | |
CN105610932B (zh) | 适用于城市轨道交通的数据推送系统及方法 | |
CN101312377A (zh) | 无源光纤网络中带有无线接入功能的光网络单元装置 | |
CN102761608B (zh) | Udp会话复用的方法和负载均衡设备 | |
CN102457494B (zh) | 一种基于sip信令提高监听成功率的方法和装置 | |
CN106789099A (zh) | 基于pcie的高速隔离网络方法及终端 | |
CN110868242B (zh) | 一种基于异步通信的数据采集方法 | |
CN104753813B (zh) | Dma传送报文的方法 | |
CN102523122B (zh) | 广域网终端设备远程管理方法及管理装置 | |
CN101557354A (zh) | 一种在在线客服中发送图片的方法 | |
CN102681969B (zh) | 基于can总线的长帧数据传输方法 | |
CN103220260A (zh) | 更新数据的方法、服务器、客户端及系统 | |
CN103297474B (zh) | 一种批量处理分包方法和系统 | |
CN108234606A (zh) | 一种消息管理方法及管理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |