基于B/S架构实现数据实时更新处理的系统及其方法技术方案

技术编号:23149109 阅读:22 留言:0更新日期:2020-01-18 13:29
本发明专利技术涉及一种基于B/S架构实现数据实时更新处理的系统,包括外接设备,用于提供实时显示的串口数据;客户端,与所述的外接设备通过串口通信协议相连接,用于连接串口并提供通讯协议服务;网络服务器,用于为所有HTTP请求提供服务;浏览器,与所述的客户端和网络服务器相连接,用于向网络服务器发出HTTP请求,并将外接设备的数据信息在浏览器实时显示。本发明专利技术还涉及一种实现基于B/S架构的数据实时更新处理的方法。采用了本发明专利技术的基于B/S架构实现数据实时更新处理的系统及其方法,解决了基于B/S架构的软件和硬件进行串口通信问题,并且达到兼容不同浏览器且不降低服务器性能的目的。

The system and method of real-time data update based on B / S architecture

【技术实现步骤摘要】
基于B/S架构实现数据实时更新处理的系统及其方法
本专利技术涉及企业信息系统领域,尤其涉及服务器系统领域,具体是指一种基于B/S架构实现数据实时更新处理的系统及其方法。
技术介绍
传统的基于C/S(客户端/服务器)架构的软件,可以依赖其自身的优势通过串口通信协议实现和各种外接设备的数据交换。但是,当使用B/S(浏览器/服务器)架构的软件的时候,串口通信便成了一大痛点。目前主流的浏览器都没有支持直接和设备串口进行通信,开发人员只能通过其他的途径来解决这个问题。要想在浏览器页面中实时显示串口数据,目前存在几种方案:1、IE浏览器MSComm控件,但是只支持IE浏览器,目前已经不再维护;2、在需要进行串口通信的设备上安装串口通信客户端,通过HTTP请求服务器发送数据给页面。针对以上两种情况,有以下缺点:方式1只适用IE浏览器,对于流行的Chrome和Firefox浏览器不支持,因此不适用大多数情况;方式2如果要保持串口数据在不降低服务器性能的同时实时显示到浏览器,则需要通过轮询的方式来保持HTTP长连接,这种方式必定会耗费很大的资源,而且轮询受到很多其他因素的影响,例如网络不畅,将会加重对服务器的影响。因此,需要一种可以在兼容不同浏览器并且不降低服务器性能的情况下进行串口数据实时显示的方法来解决这些问题,而本例就是为解决这个问题而生。
技术实现思路
本专利技术的目的是克服了上述现有技术的缺点,提供了一种满足误差低、结构简单、适用范围广泛的基于B/S架构实现数据实时更新处理的系统及其方法。为了实现上述目的,本专利技术的基于B/S架构实现数据实时更新处理的系统及其方法如下:该基于B/S架构实现数据实时更新处理的系统,其主要特点是,所述的系统包括:外接设备,用于提供实时显示的串口数据;客户端,与所述的外接设备通过串口通信协议相连接,用于连接串口并提供通讯协议服务;网络服务器,用于为所有HTTP请求提供服务;浏览器,与所述的客户端和网络服务器相连接,用于向网络服务器发出HTTP请求,并将外接设备的数据信息在浏览器实时显示,所述的浏览器通过客户端进行串口通信。较佳地,所述的客户端提供的通讯协议服务为WebSocketServer服务。该利用上述系统实现基于B/S架构的数据实时更新处理的方法,其主要特点是,所述的方法包括以下步骤:(1)所述的浏览器向网络服务器发送HTTP请求;(2)所述的浏览器通过通信协议连接所述的客户端的通讯协议服务;(3)所述的客户端将串口数据通过通信协议推送至浏览器进行实时显示。较佳地,所述的方法还包括以下步骤:(1.1)所述的客户端开机后创建通讯协议服务和连接串口。较佳地,所述的通信协议为WebSocketServer,所述的通讯协议服务为WebSocketServer服务。采用了本专利技术的基于B/S架构实现数据实时更新处理的系统及其方法,避免因为浏览器本身不支持直接和串口通信以及频繁的HTTP请求而影响到服务器性能,避免实时数据受到外界影响,比如网络不畅时会使HTTP请求耗费更大的资源。本专利技术使用WebSocket协议是一个全双工通信协议,一次握手、永久通信的特点保证了数据的及时性和连续性,本专利技术解决了基于B/S架构的软件和硬件进行串口通信问题,并且达到兼容不同浏览器且不降低服务器性能的目的。附图说明图1为本专利技术的基于B/S架构实现数据实时更新处理的系统示意图。图2为本专利技术的实现基于B/S架构的数据实时更新处理的方法的流程图。具体实施方式为了能够更清楚地描述本专利技术的
技术实现思路
,下面结合具体实施例来进行进一步的描述。本专利技术的该基于B/S架构实现数据实时更新处理的系统,其中包括:外接设备,用于提供实时显示的串口数据;客户端,与所述的外接设备通过串口通信协议相连接,用于连接串口并提供通讯协议服务;网络服务器,用于为所有HTTP请求提供服务;浏览器,与所述的客户端和网络服务器相连接,用于向网络服务器发出HTTP请求,并将外接设备的数据信息在浏览器实时显示,所述的浏览器通过客户端进行串口通信。作为本专利技术的优选实施方式,所述的客户端提供的通讯协议服务为WebSocketServer服务。本专利技术的该利用上述系统实现基于B/S架构的数据实时更新处理的方法,其中包括以下步骤:(1)所述的浏览器向网络服务器发送HTTP请求;(2)所述的浏览器通过通信协议连接所述的客户端的通讯协议服务;(3)所述的客户端将串口数据通过通信协议推送至浏览器进行实时显示。作为本专利技术的优选实施方式,所述的方法还包括以下步骤:(1.1)所述的客户端开机后创建通讯协议服务和连接串口。作为本专利技术的优选实施方式,所述的通信协议为WebSocketServer,所述的通讯协议服务为WebSocketServer服务。本专利技术的具体实施方式中,在企业生产中,会使用到很多的信息化软件,同时还会涉及到软件和很多外接设备进行数据通信,例如通过电子秤自动获取称重数量、读取RFID卡数据等。传统的C/S架构的软件通过串口通信协议轻松与各种外接设备通信。但是对于目前主流的B/S架构的软件来说,串口通信已经成为一大难点。浏览器本身不支持直接和串口通信、频繁的HTTP请求将会影响到服务器性能等问题都需要解决。目前比较通用的做法是借助客户端的通用性进行串口通信,然后通过HTTP连接远程Web服务器传递数据,再显示到浏览器中。但是这种做法有几个缺点:1、需要通过轮询的方式保持HTTP长连接;2、严重影响到服务器性能;3、数据及时显示受到外界影响较大,例如网络不畅将会使HTTP请求耗费更大的资源。针对现有技术的一些痛点问题,提出如下解决方案,方案框架示意图如图1所示。服务器上部署Web应用,为所有HTTP请求提供服务;外接设备作为串口数据来源,提供要实时显示的数据;客户端(WebSocketServer)充当外接设备和浏览器的桥梁,连接串口并提供WebSocketServer服务;浏览器请求Web服务器,并将外接设备信息实时显示在浏览器界面中。由于浏览器无法直接和串口进行通信,因此使用客户端充当计算机串口和浏览器之间的桥梁进行通信。在连接有外接设备的计算机上安装客户端,客户端在打开的同时利用串口通信协议与计算机串口连接,并将串口数据读取出来并存储在内存中。并且,在打开客户端的过程中同步创建WebSocketServer服务(WebSocket是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输,WebSocket协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯)。因此,此处的客户端既是串口数据的接收者,又是WebSocketServer服务的提供者。当用户打开浏览器进入需要进行串本文档来自技高网
...

【技术保护点】
1.一种基于B/S架构实现数据实时更新处理的系统,其特征在于,所述的系统包括:/n外接设备,用于提供实时显示的串口数据;/n客户端,与所述的外接设备通过串口通信协议相连接,用于连接串口并提供通讯协议服务;/n网络服务器,用于为所有HTTP请求提供服务;/n浏览器,与所述的客户端和网络服务器相连接,用于向网络服务器发出HTTP请求,并将外接设备的数据信息在浏览器实时显示,所述的浏览器通过客户端进行串口通信。/n

【技术特征摘要】
1.一种基于B/S架构实现数据实时更新处理的系统,其特征在于,所述的系统包括:
外接设备,用于提供实时显示的串口数据;
客户端,与所述的外接设备通过串口通信协议相连接,用于连接串口并提供通讯协议服务;
网络服务器,用于为所有HTTP请求提供服务;
浏览器,与所述的客户端和网络服务器相连接,用于向网络服务器发出HTTP请求,并将外接设备的数据信息在浏览器实时显示,所述的浏览器通过客户端进行串口通信。


2.根据权利要求1所述的基于B/S架构实现数据实时更新处理的系统,其特征在于,所述的客户端提供的通讯协议服务为WebSocketServer服务。


3.一种利用权利要求1所述的系统实现基于B/S架...

【专利技术属性】
技术研发人员:唐火松谢国伟
申请(专利权)人:上海智引信息科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1