基于WebSocket的数据处理和道闸控制系统的制作方法

文档序号:14570555发布日期:2018-06-01 21:54阅读:358来源:国知局
基于WebSocket的数据处理和道闸控制系统的制作方法

本实用新型涉及智能停车场技术领域,特别涉及一种基于WebSocket的数据处理和道闸控制系统。



背景技术:

目前,停车场系统正在从传统走向移动互联网时代,在当今的互联网+智能识别停车场管理系统的前端技术中,需要把分散在各个停车场的孤岛信息集中到云端,形成资源的共享。同时移动终端的普及也使得停车场的管理和监控可以通过手机移动终端来实现,传统的基于HTTP(长连接或者短连接)、基于Comet的定时轮询技术,由于需要在较短的时间间隔内不停发送请求用来获取服务状态,导致服务负载增大,而且考虑到在手机终端上,频繁的请求也会导致手机电量的快速消耗,同时对数据库的频繁访问也会导致系统故障。因此,在车场出入口的实时监控中需要终端设备快速实时的发送道闸控制命令,以给客户一种良好的体验,是目前亟待解决的一个问题。



技术实现要素:

本实用新型旨在至少解决上述技术问题之一。

为此,本实用新型的目的在于提出一种基于WebSocket的数据处理和道闸控制系统,该系统能够提高网络宽带的利用率及网络各层之间的传输速度。

为了实现上述目的,本实用新型公开了一种基于WebSocket的数据处理和道闸控制系统,包括:移动终端、云端服务器及多个WebSocket客户端,其中,所述移动终端与所述云端服务器通信,以向所述云端服务器发送道闸控制请求信息,其中,所述道闸控制请求信息中包括目标停车场编号及目标道闸编号;所述云端服务器接收所述道闸控制请求信息,并根据所述道闸控制请求信息确定目标停车场及目标道闸,并向对应于所述目标停车场WebSocket客户端发送目标道闸控制指令;多个WebSocket客户端,所述多个WebSocket客户端与多个停车场一一对应,且与所述云端服务器通信,以在收到所述目标道闸控制指令时,对所述目标道闸进行控制。

另外,根据本实用新型上述的基于WebSocket的数据处理和道闸控制系统还可以具有如下附加的技术特征:

在一些示例中,所述WebSocket客户端用于向所述云端服务器发送握手请求,并在接收到所述云端服务器发送的握手成功指令后,建立与所述云端服务器的连接。

在一些示例中,所述WebSocket客户端通过监控模块实时监控与所述云端服务器的连接状态,并在所述连接断开或异常时,重新向所述云端服务器发送所述握手请求。

在一些示例中所述云端服务器通过异步的Servlet线程池对所述道闸控制请求信息进行解析,以确定目标停车场及目标道闸。

在一些示例中,所述云端服务器为基于Web容器的WebSocket服务器。

在一些示例中,所述云端服务器与所述WebSocket客户端之间的连接为WebSocket连接。

在一些示例中,所述云端服务器和所述WebSocket客户端都是基于Tomcat的WebSocket-API实现。

在一些示例中,所述云端服务器和所述WebSocket客户端的通信数据为文本或二进制数据。

在一些示例中,所述道闸控制请求信息为JSON格式。

在一些示例中,所述移动终端为手机。

根据本实用新型的基于WebSocket的数据处理和道闸控制系统,具有如下优点:

1、WebSocket连接占用资源少,相互沟通的消息头只有2个字节,因此大大提高了网络带宽的利用率;

2、较传统的HTTP或者Comet方式,基于WebSocket的WebSocket客户端和云端服务器只做一次握手,从而加快了网络各个层之间的传输速度;

3、云端服务器采用队列缓存的异步处理方式,大大缩减了数据处理的时间,提高了道闸控制的实时性;

4、对现在C/S结构的车场岗亭端往B/S结构扩展做了支持,减少了系统重构的成本。

本实用新型的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本实用新型的实践了解到。

附图说明

本实用新型的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1是根据本实用新型实施例的基于WebSocket的数据处理和道闸控制系统的结构框图;以及

图2是根据本实用新型一个实施例的基于WebSocket的数据处理和道闸控制系统的控制原理示意图。

具体实施方式

下面详细描述本实用新型的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本实用新型,而不能理解为对本实用新型的限制。

在本实用新型的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本实用新型和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本实用新型的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本实用新型的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本实用新型中的具体含义。

以下结合附图描述根据本实用新型实施例的基于WebSocket的数据处理和道闸控制系统。

图1是根据本实用新型一个实施例的基于WebSocket的数据处理和道闸控制系统的结构框图。如图1所示,该系统100包括:移动终端110、云端服务器120及多个WebSocket客户端130。

其中,移动终端110与云端服务器120通信,以向云端服务器120发送道闸控制请求信息,其中,道闸控制请求信息中包括目标停车场编号及目标道闸编号。

其中,移动终端110例如为用户手持的手机。例如,当用户想驾车驶出某个停车场,则通过手机向云端服务器120发送该停车场的编号及所行走的道闸的编号。

在本实用新型的一个实施例中,道闸控制请求信息例如为JSON格式的数据。进一步地,移动终端110(手机)例如通过HTTP通道发送道闸控制请求信息(JSON请求数据)到云端服务器120。

云端服务器120接收道闸控制请求信息,并根据道闸控制请求信息确定目标停车场及目标道闸,并向对应于目标停车场WebSocket客户端130发送目标道闸控制指令。

具体地,例如,云端服务器120通过异步的Servlet线程池对道闸控制请求信息进行解析,以确定目标停车场及目标道闸。也就是说,云端服务器120在接收到道闸控制请求信息后,将其存储在后台的消息队列里面,然后在队列里获取该信息,并对其进行异步解析以得到目标停车场编号及目标道闸编号,进而确定目标停车场和目标道闸。

多个WebSocket客户端130与多个停车场一一对应,且与云端服务器120通信,以在收到目标道闸控制指令时,对目标道闸进行控制。

其中,在本实用新型的一个实施例中,WebSocket客户端130用于向云端服务器120发送握手请求,并在接收到云端服务器120发送的握手成功指令后,建立与云端服务器120的连接。也就是说,WebSocket客户端130主动连接到云端服务器120,并通过一次握手机制,建立了WebSocket连接。

进一步地,WebSocket客户端130例如包括一个监控模块,这样,WebSocket客户端130可以通过监控模块实时监控与云端服务器120的连接状态,并在连接断开或异常时,重新向云端服务器120发送握手请求。

在一些示例中,云端服务器120例如为基于Web容器的WebSocket服务器。基于此,云端服务器120与WebSocket客户端130之间的连接为WebSocket连接。

更为具体地,云端服务器120和WebSocket客户端130都是基于Tomcat的WebSocket-API实现。对于云端服务器120增加一个@ServerEndpoint注解,定义一个服务器端,注解的值将用于监听WebSocket客户端130的连接,对于WebSocket客户端130增加一个@ClientEndpoint注解,定义一个WebSocket客户端130。WebSocket客户端130和云端服务器120来回传输数据的单位称消息。消息可以是文本或二进制数据,还携带用于协议级的信令数据。也就是说,云端服务器120和WebSocket客户端130的通信数据为文本或二进制数据。

具体地,云端服务器120和WebSocket客户端130分别需要实现对应的接口方法如下:

1)onOpen和onClose方法分别被@OnOpen和@OnClose所注解。这两个注解的作用:定义了当一个新用户连接和断开的时候所调用的方法。

2)onMessage方法被@OnMessage所注解。这个注解定义了当云端服务器120接收到WebSocket客户端130发送的消息时所调用的方法。注意:这个方法可能包含一个javax.websocket.Session可选参数(在本实用新型的例子里就是session参数)。如果有这个参数,容器将会把当前发送消息的WebSocket客户端130的连接Session注入进去。同样的WebSocket客户端130在接收到云端服务器120的消息后的调用方法。此方法也可以重载用来发送云端服务器120和WebSocket客户端130直接的乒乓信息。

3)onError方法被@OnError所注解,当网络出现问题或者其他异常错误出现时,这个方法会被调用处理。

为了便于更好地理解本实用新型,以下结合图2,以具体的实施例对本实用新型的控制系统进行详细描述。

在本实施例中,结合图2所示,移动终端例如为手机,云端服务器例如为基于WebSocket的服务器端,车场客户端即WebSocket客户端,基于此,该基于WebSocket的数据处理和道闸控制系统的主要控制原理可概述为:首先在云端需要启动基于WebSocket的服务器端,创建消息队列用于存储手机终端的控制命令,然后车场服务中心需要启动基于WebSocket的客户端,即WebSocket客户端。车场服务中心启动后,车场客户端主动连接到云端服务器,通过一次握手机制,建立了WebSocket连接。然后,手机终端通过HTTP通道发送JSON请求数据(道闸控制请求信息)到云端服务器,云端服务器通过异步的Servlet线程池去处理相应的控制命令,解析JSON请求后放入消息队列中,服务端消息处理组件获取消息后解析消息的目标车场,然后找到目标车场的WebSocket通道进行命令下发,进而实现对相应的目标道闸的控制。

在本实施例中,该基于WebSocket的数据处理和道闸控制系统的控制流程可概述如下:

第一步:云端启动一个基于Web容器的WebSocket服务,即云端服务器。

第二步:各个车场的每个岗亭服务端作为WebSocket客户端启动连接到云端服务器,WebSocket客户端能监控当前和云端服务器的连接状态,如果连接异常,WebSocket客户端主动发起重新建立连接。

第三步:云端服务器和每个连接上来的WebSocket客户端进行乒乓的消息传递,以便云端服务器可以集中式监控当前所有连接的停车场的状况。

第四步:手机终端通过HTTP通道发送JSON数据请求(道闸控制请求信息)至云端服务器,以便进行数据的传输和车场道闸的控制。

第五步:云端服务器接收到JSON数据请求后放到后台的消息队列里面,云端后台服务从队列里面取到JSON数据请求进行异步分析,根据手机端消息的解析结果找到对应目标车场的WebSocket通道进行控制命令的下发。

第六步:对应的WebSocket客户端接收到云端服务器发送的控制命令后,根据对应目标道闸的编号对目标道闸的相应设备进行控制。

综上,根据本实用新型的基于WebSocket的数据处理和道闸控制系统,具有如下优点:

1、WebSocket连接占用资源少,相互沟通的消息头只有2个字节,因此大大提高了网络带宽的利用率;

2、较传统的HTTP或者Comet方式,基于WebSocket的WebSocket客户端和云端服务器只做一次握手,从而加快了网络各个层之间的传输速度;

3、云端服务器采用队列缓存的异步处理方式,大大缩减了数据处理的时间,提高了道闸控制的实时性;

4、对现在C/S结构的车场岗亭端往B/S结构扩展做了支持,减少了系统重构的成本。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本实用新型的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管已经示出和描述了本实用新型的实施例,本领域的普通技术人员可以理解:在不脱离本实用新型的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本实用新型的范围由权利要求及其等同限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1