CN109495530B - 一种实时交通数据传输方法、传输装置及传输系统 - Google Patents
一种实时交通数据传输方法、传输装置及传输系统 Download PDFInfo
- Publication number
- CN109495530B CN109495530B CN201710821692.XA CN201710821692A CN109495530B CN 109495530 B CN109495530 B CN 109495530B CN 201710821692 A CN201710821692 A CN 201710821692A CN 109495530 B CN109495530 B CN 109495530B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- server
- real
- data transmission
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Abstract
本发明实施例提供了一种实时交通数据传输方法、传输装置及传输系统,其中方法包括:保存对所需交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;通过WebSocket数据传输通道,接收由服务器推送的实时交通数据。本发明实施例中,只要已订阅数据集的实时交通数据有数据更新,服务器即可进行推送,能够保证客户端更加快速地获取实时交通数据,便于监测人员根据实时交通数据做出决策,提高了综合交通运行分析监测平台的运行效率。
Description
技术领域
本发明涉及交通监控技术领域,特别是涉及一种实时交通数据传输方法、传输装置及传输系统。
背景技术
综合交通运行分析监测平台作为交通指挥中心的核心业务系统,需要宏观的掌握城市路网、公共交通、城际交通、静态交通的运行态势和运行状态。因此,监测人员需要了解最新的实时交通数据,便于根据路况做出决策以解决突发性的现场问题。
现有综合交通运行分析监测平台在进行实时交通数据传输时,一般采用基于轮询的实时交通数据传输方案。即由综合交通运行分析监测平台定时向后台服务器发送数据获取请求,服务器接到请求后,调取数据库的实时交通数据,然后向综合交通运行分析监测平台返回包含实时交通数据的响应信息并断开连接。
现有的基于轮询的实时交通数据传输方案,如果监测平台需要获取数据,就需要先建立连接再发送请求,服务器只能根据所接收的请求,被动地发送所请求获取的交通数据,这种数据传输机制具有滞后性,因而无法保证综合交通运行分析监测平台的客户端获取实时的交通数据。
发明内容
本发明实施例的目的在于提供一种实时交通数据传输方法、传输装置及传输系统,以实现综合交通运行分析监测平台实时获取交通数据。具体技术方案如下:
第一方面,本发明实施例提供了一种实时交通数据传输方法,应用于客户端,包括:
保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;
通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
通过所述WebSocket数据传输通道,接收由服务器推送的与所述已订阅数据集的主题标识对应的实时交通数据。
可选地,所述客户端通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识,具体包括:
收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
可选地,所述方法还包括:
接收由服务器主动推送的更新后的交通数据,并更新所述当前数据模块中已订阅的数据集中的实时交通数据,所述由服务器主动推送的更新后的交通数据,为当服务器检测到与所述已订阅数据集的主题标识对应的实时交通数据出现更新时的交通数据。
可选地,所述方法还包括:
当收到切换所述数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过所述WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
可选地,所述方法还包括:
向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
可选地,当所述WebSocket数据传输通道断开后,所述方法还包括以下步骤的一个或多个:
客户端和服务器端进行重连,重连间隔时间不低于第一预设值;
客户端和服务器端进行重连,重连次数不高于第二预设值;
客户端和服务器端进行重连,重连最大时间不高于第三预设值;
客户端和服务器端进行重连,单次连接超时时间不高于第四预设值。
可选地,所述方法还包括:
根据日志打印预设值,判断是否将前台日志和后台日志进行对比,其中,所述前台日志为客户端与服务器之间所传输数据的日志,所述后台日志为服务器与数据库之间所传输数据的日志;
当判断需要将前台日志和后台日志进行对比时,获取所述前台日志和所述后台日志,并对比所述前台日志和后台日志中包括的内容是否一致;
若一致,根据对比结果,确定未发生数据丢失;
若不一致,根据对比结果,确定发生数据丢失。
可选地,所述方法还包括:
生成所述WebSocket数据传输通道对应的Websoket Session;
将所述WebSocket数据传输通道对应的Websoket Session和登录所述数据传输系统所使用的SessionID进行绑定。
第二方面,本发明实施例提供了一种实时交通数据传输装置,包括:
生成模块,用于保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;
第一发送模块,用于通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
接收模块,用于通过所述WebSocket数据传输通道,接收由服务器推送的与所述已订阅数据集的主题标识对应的实时交通数据。
可选地,所述第一发送模块,具体用于:
当收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
可选地,所述装置还包括:
更新模块,用于接收由服务器主动推的送更新后的交通数据至客户端,并更新所述当前数据模块中已订阅的数据集中的实时交通数据,所述由服务器主动推送的更新后的交通数据,为当服务器检测到与所述已订阅数据集的主题标识对应的实时交通数据出现更新时的交通数据。
可选地,所述装置还包括:
第二发送模块,用于当收到切换所述数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过所述WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
可选地,所述装置还包括:
取消模块,用于向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
第三方面,本发明实施例提供了一种实时交通数据传输系统,包括客户端和服务器,其中:
客户端,用于保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;以及,向服务器发送已订阅数据集的主题标识;
服务器,用于通过所述WebSocket数据传输通道,向客户端推送与所述已订阅数据集的主题标识对应的实时交通数据。
可选地,所述客户端具体用于:
当收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
可选地,所述服务器还用于:
当检测到所述与所述已订阅数据集的主题标识对应的实时交通数据出现更新时,服务器主动推送更新后的交通数据至客户端,以使客户端更新所述当前数据模块中已订阅的数据集中的实时交通数据。
可选地,所述客户端还用于:
当收到切换所述数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过所述WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
可选地,所述客户端还用于:
向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
第四方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,执行以下步骤:
保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;
通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
通过所述WebSocket数据传输通道,接收由服务器推送的与所述已订阅数据集的主题标识对应的实时交通数据。
第五方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行以下步骤:
保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;
通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
通过所述WebSocket数据传输通道,接收由服务器推送的与所述已订阅数据集的主题标识对应的实时交通数据。
本发明实施例提供的一种实时交通数据传输方法、传输装置及传输系统,通过客户端保存对所需的交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;服务器能够向客户端主动推送与已订阅数据集的主题标识对应的实时交通数据。本发明实施例的推送机制,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的实时交通数据传输方法的一种流程示意图;
图2为本发明实施例的综合交通运行分析监测平台进行数据传输时的流程示意图;
图3为本发明实施例提供的实时交通数据传输装置的一种结构示意图;
图4为本发明实施例提供的实时交通数据传输装置的另一种结构示意图;
图5为本发明实施例提供的实时交通数据传输系统的一种结构示意图;
图6为本发明实施例提供的电子设备的一种结构示意图;
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
WebSocket传输技术是为解决客户端与服务器端之间的实时通信而产生的技术。其本质是先通过HTTP(Hyper Text Transfer Protocol,超文本传输协议)/HTTPS(HyperText Transfer Protocol over Secure Socket Layer,安全超文本传输协议)进行握手,然后创建一个用于交换数据的TCP连接,此后服务器端与客户端通过此TCP连接进行实时通信,就能够使服务器和客户端在给定的时间范围内的任意时刻相互传输数据。
本发明实施例提供的一种实时交通数据传输方法的一种具体实施例,可以应用于综合交通运行分析监测平台,当然,还可以应用于综合交通运行分析监测平台中的客户端以及综合交通运行分析监测平台中的浏览器,参考图1,本发明实施例的一种实时交通数据传输方法可以包括:
S101、保存对所需交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识。
本发明实施例中,客户端可以对所需的交通数据按照不同的模块进行模块划分,从而生成多个数据模块,且每个数据模块对应一个唯一的模块标识,亦可称为模块ID,从而能够对各数据模块进行区分。
可以理解的是,综合交通运行分析监测平台中,一般可以通过内置的浏览器获取数据并显示实时的交通数据给用户,通常可以作为客户端。浏览器中通常可以包含多个需要显示实时交通数据的数据模块,例如:城市路网模块,用于显示当前城市的实时的交通状况;公交运行模块,用于显示当前城市实时的公交车运营信息;出租车运行模块,用于显示当前城市实时的出租车运营信息。
在本发明实施例中,可以为每个数据模块分配一个唯一的模块标识,以将各模块区分开。并且,每个数据模块中还可以包含多个数据集,且每个数据集可以对应一个主题,每个主题都具有唯一的主题标识,从而能够对各数据集进行区分。需要说明的是,主题可以表示数据集中的交通数据的属性,而主题标识则是用以将各数据集进行区分。
示例性地,以公交运行模块为例,其可以包含的数据集有:整个城市的公交车的平均速度,以及整个城市的公交车目前载客量。其中,可以将表示整个城市的公交车的平均速度的数据集命名为“数据集1”,将表示整个城市的公交车目前载客量的数据集命名为“数据集2”。那么,“数据集1”和“数据集2”即可以为主题标识,数据集1的主题则可以为“公交车平均速度”;数据集2的主题则可以为“公交车载客量”。
S102、通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识。
本发明实施例中,客户端可以通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识。WebSocket数据传输通道可以是预先建立的用于实时数据交换的通道,建立WebSocket数据传输通道后,综合交通运行分析监测平台可以通过该通道向服务器发送已订阅数据集的主题标识,服务器便能够通过该通道接收已订阅数据集的主题标识。
作为本发明实施例一种可选的实施方式,通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识,具体可以包括:
收到所选定的数据模块的模块标识信息时,订阅模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
客户端通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识前,可以收到用户所选定的数据模块的模块标识信息,从而能够订阅模块标识对应的数据模块中的数据集。具体地可以例如,当客户端获取用户选中数据模块的模块标识信息后,即可订阅数据模块中的数据集。或者,当客户端获取用户进入某一个数据模块后,也可以直接订阅该模块下的数据集,并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
S103、通过WebSocket数据传输通道,接收由服务器推送的与已订阅数据集的主题标识对应的实时交通数据。
如前文所述,主题标识与数据集具有唯一对应性,因此服务器可以通过已订阅数据集的主题标识,在后台数据库中查找相应的实时交通数据,即与已订阅数据集的主题标识对应的实时交通数据。
服务器查找到相应的交通数据后,便可以通过WebSocket数据传输通道,向客户端主动地推送相应的实时交通数据,客户端可以通过WebSocket数据传输通道,接收由服务器推送的与已订阅数据集的主题标识对应的实时交通数据。也就是说,本发明实施例的实时交通数据传输方法,可以不需要先由客户端发送数据获取请求,服务器被动地发送所请求获取的交通数据;而是只要订阅数据模块中数据集的主题标识,服务器便可以主动地推送相应的实时交通数据。这种推送机制,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。
本发明实施例提供的实时交通数据传输方法,通过客户端保存对所需的交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;服务器能够向客户端主动推送与已订阅数据集的主题标识对应的实时交通数据。本发明实施例的推送机制,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。
作为本发明实施例的一种可选的实施方式,客户端接收与已订阅数据集的主题标识对应的实时交通数据后,客户端还可以显示该实时交通数据。
本发明实施例中,客户端接收经服务器推送的、与已订阅数据集的主题标识对应的实时交通数据后,可以在当前数据模块中,将所接收的实时交通数据记录至对应的数据集中,并且客户端还可以在显示页面中显示该交通数据。
例如,客户端接收包含整个城市的公交车的平均速度的交通数据后,可以在公交运行模块中的主题为“公交车平均速度”的数据集中,记录该交通数据,并在屏幕中显示该交通数据。
作为本发明实施例的一种可选的实施方式,客户端还可以接收由服务器主动推送的更新后的交通数据,并更新所述当前数据模块中已订阅的数据集中的实时交通数据。
当服务器检测到与已订阅数据集的主题标识对应的实时交通数据出现更新时,服务器即可以主动推送更新后的交通数据至客户端,客户端可以更新数据模块中已订阅的数据集中的实时交通数据,客户端能够快速地获取实时交通数据。
可选地,当与已订阅数据集的其中部分主题标识对应的实时交通数据出现更新时,服务器推送更新后的交通数据至客户端后,客户端可以只对该部分主题标识对应的数据集进行更新,从而降低客户端的数据处理量;或者,也可以将数据模块的所有数据集中的实时交通数据刷新一遍,从而可以保证不会遗漏所更新的实时交通数据。
作为本发明实施例的一种可选的实施方式,当客户端收到切换当前数据模块为新的数据模块的操作信息时,客户端可以不用向服务器发送取消订阅当前数据模块中已订阅的数据集的指令,而是可以由服务器根据订阅数据集的主题标识的变化直接进行替换。
当然,作为另一种可选的实施方式,也可以通过客户端向服务器发送取消订阅数据集的主题标识,由服务器根据客户端的取消指令再进行订阅信息的更新操作。例如具体可以为:客户端通过WebSocket数据传输通道,向服务器发送取消订阅数据集的主题标识,客户端取消订阅当前数据模块中已订阅的数据集,并订阅切换后的数据模块中的数据集。
本发明实施例中,当用户希望看到其它数据模块中的交通数据时,可以进行数据模块间的切换。当客户端接收到数据模块的切换命令后,客户端可以取消订阅切换前的数据模块中已订阅的数据集,并订阅切换后的数据模块中的数据集。当取消已订阅的数据集后,服务器不再推送与已取消的数据集对应的实时交通数据,从而减少客户端和服务器间的数据传输量,降低服务器压力。
作为本发明实施例的一种可选的实施方式,当WebSocket数据传输通道断开后,本发明实施例的实时交通数据传输方法还可以包括以下步骤的一个或多个:
客户端和服务器端进行重连,重连间隔时间不低于第一预设值。
客户端和服务器端进行重连,重连次数不高于第二预设值。
客户端和服务器端进行重连,重连最大时间不高于第三预设值。
客户端和服务器端进行重连,单次连接超时时间不高于第四预设值。
由于WebSocket数据传输通道可能会因为数据阻塞、后台服务异常等因素,出现连接断开的情况,需要重新建立连接以保证系统的正常使用。当WebSocket数据传输通道断开后,客户端会不断请求进行重连,可能会导致系统的内存和CPU占用率不断上涨。
因此,当客户端和服务器端进行重连时,可以设定重连间隔时间不低于第一预设值。系统管理员可以根据数据传输系统的性能设定第一预设值。
重连间隔时间是WebSocket数据传输通道因意外断开后,客户端请求重新建立连接时,两次重连之间的间隔时间,其中客户端可以为综合交通运行分析监测平台中的浏览器。具体地,例如,可以配置重连间隔时间为1000ms,表示客户端每间隔1000ms向服务器发送一次重连请求。
如前文所述,现有的WebSocket技术没有对重连间隔时间进行配置,这就可能出现客户端在很短时间间隔内不受控地发出多个重连请求,导致系统资源占用率不断攀升并出现系统瓶颈,有可能导致系统的内存和CPU资源占用率过高而造成系统非正常运行。
容易理解的是,第一预设值作为不低于数据传输系统运行出现瓶颈时的重连间隔时间,是保证数据传输系统正常运行的最小重连间隔时间。因此,本申请实施例通过将重连间隔时间设置为不低于第一预设值,便能够保证数据传输系统正常运行。
当客户端和服务器进行重连时,还可以设定重连次数不高于第二预设值。系统管理员可以根据数据传输系统的性能设定第一预设值。
重连次数可以是指WebSocket数据传输通道因意外断开后,客户端请求重新连接WebSocket数据传输通道的次数。当WebSocket数据传输通道因意外断开后,客户端会尝试重新建立连接,如果第一次建立不成功,会尝试再次建立,直到建立成功。但是随着客户端不断尝试建立,系统资源消耗也会随之增加。现有的WebSocket技术没有对重连次数进行配置,这就可能出现客户端不断地尝试建立连接,导致系统资源占用率不断攀升并出现系统瓶颈。
可以理解的是,第二预设值作为不高于数据传输系统运行出现瓶颈时的重连次数,可以是保证数据传输系统正常运行的最小重连次数。因此,本申请实施例通过将重连次数设置为不高于第二预设值,便能够保证数据传输系统正常运行。
当客户端和服务器进行重连时,可以设定重连最大时间不高于第三预设值。
重连最大时间是WebSocket数据传输通道因意外断开后,客户端多次请求重新建立连接所消耗的总时间。系统管理员可以根据数据传输系统的性能直接设定第三预设值,也可以通过第一预设值和第二预设值确定第三预设值。
如果重连最大时间超过第三预设值,客户端将停止进行重连,避免数据传输系统因不断重连而产生瓶颈。例如具体地可以为:如果设定重连间隔时间为1000ms及重连次数为30次,并且1000ms和30次均没有超过第一预设值和第二预设值。但是,如前文所述,每次进行WebSocket连接时也需要消耗时间,这就可能出现虽然配置的第一预设值和第二预设值没有问题,但重连总时间过长,仍有可能造成系统资源消耗变大;因此,可以设置重连最大时间为30000ms,即,只要客户端重连最大时间达到30000ms,就不再进行重连,从而保障系统的稳定性。
当客户端和服务器进行重连时,可以设定单次连接超时时间不高于第四预设值。系统管理员可以根据数据传输系统的性能设定第一预设值。
重连间隔时间是WebSocket数据传输通道因意外断开后,客户端每次请求重新建立连接时消耗的时间。如前文所述,每次进行WebSocket连接时也需要消耗时间,因此,可以设定单次连接超时时间不高于第四预设值,当单次连接时间超过第四预设值时,将不在进行重连。
例如,设定第四预设值为2000ms,表示当客户端单次进行连接时消耗的时间高于2000ms后,将不再进行重连,从而避免系统资源消耗变大,保障系统的稳定性。
需要说明的是,在对上述重连间隔时间、重连次数、重连最大时间以及单次连接超时时间进行设定时,可以不需同时设定,即,可以单独对上述参数的其中一个或几个进行设定。
作为本发明实施例一种可选的的实施方式,本发明实施例提供的一种实时交通数据传输方法,还可以包括以下步骤:
步骤A、当WebSocket数据传输通道连接异常时,断开WebSocket数据传输通道。
例如,当综合交通运行分析监测平台的浏览器关闭或者服务器发生异常而宕机的时候,会造成WebSocket数据传输通道连接异常,这时,客户端可以主动去断开WebSocket数据传输通道。
步骤B、在重连间隔时间后,重新连接WebSocket数据传输通道,直到成功连接WebSocket数据传输通道。
断开WebSocket数据传输通道后,进一步地,客户端可以在重连间隔时间后重新尝试连接WebSocket数据传输通道,如果不成功,在下一个重连间隔时间后再次重新连接WebSocket数据传输通道。如前文所述,该重连间隔时间可以不低于第一预设值。
步骤C、如果重连次数达到第二预设值,断开WebSocket数据传输通道。
本发明实施例中,当重新连接WebSocket数据传输通道的尝试次数达到第二预设值时仍没有连接成功时,此时客户端可以选择主动断开该数据通道,从而达到避免因不断重连WebSocket数据传输通道而造成系统资源占用率升高的目的。
作为本发明实施例一种可选的的实施方式,本发明实施例还可以根据日志打印预设值,选择是否将前台日志和后台日志进行对比。其中,日志打印预设值通常设置为true或者false,当日志打印预设值设置为true时,表示打印日志,其目的是将打印的日志进行对比;当日志打印预设值设置为false时,表示不打印日志。前台日志为客户端与服务器之间所传输数据的日志,用来记录客户端和服务器之间的数据传输情况。一般情况下,前台日志可以保存在客户端的存储器中。后台日志为服务器与数据库之间传输数据的日志,用来记录服务器与数据库之间的传输数据情况。一般情况下,后台日志可以保存在服务器中,也可以保存在后台数据库中。
可选地,如果日志打印预设值为true,当客户端判断需要将前台日志和后台日志进行对比,则将前台日志和后台日志进行对比,其对比过程可以为:
若前台日志和后台日志的内容一致,客户端根据对比结果,确定未发生数据丢失;
若前台日志和后台日志的内容不一致,客户端根据对比结果,确定发生数据丢失。
一般情况下,可以通过对比前台日志和后台日志的内容是否一致,作为传输数据是否丢失的依据。对比的内容例如可以为,对比前台日志和后台日志的数据个数是否一致,或者,对比每个对应数据的一致性,例如选择是否对比前台日志和后台日志的内容,可以在需要检验数据传输内容性时及时进行检验,从而保证数据传输的准确性。
随着WebSocket技术被开发人员广泛应用到各类实际应用中,WebSocket技术自身存在的安全性问题也逐渐显露。其中最容易发生的就是跨站点WebSocket劫持漏洞。为了创建全双工通信,客户端需要基于HTTP协议进行握手切换到WebSocket协议,对于绝大多数Web应用来说,客户端身份认证一般都是基于SessionID的Cookie或者HTTP头部参数,黑客可能伪造握手请求绕过身份认证,其中Session是指会话对象,SessionID是指会话对象的标识;Cookie指网站为了辨别用户身份、进行Session跟踪而储存在用户本地终端上的数据。
作为本发明实施例一种可选的的实施方式,本发明实施例还可以包括以下步骤:
生成WebSocket数据传输通道对应的Websoket Session;将WebSocket数据传输通道对应的Websoket Session和登录数据传输系统所使用的SessionID进行绑定。
本发明实施例中,用户登录综合交通运行分析监测平台后,会产生一个会话对象ID,即SessionID;同时,用户通过综合交通运行分析监测平台的浏览器建立Websoket数据传输通道时,会在服务器中生成一个唯一的会话对象,即Websoket Session。因此,可以将上述两个会话对象绑定,即,用户在进行Websoket数据传输通道连接时,数据传输系统会首先判断用户登录数据传输系统所使用的SessionID是否存在,如果不存在则禁止Websoket数据传输通道连接;如果存在,则生成Websoket数据传输通道对应的Websoket Session,并将这两个会话对象共同作为拦截非法请求的依据。这样,即使黑客成功伪造了Websoket数据传输通道对应的Websoket Session,还有绑定的登录数据传输系统所使用的SessionID作为判断依据,从而对非法请求进行拦截,保证WebSocket数据传输通道的安全性。
随着WebSocket技术被开发人员广泛应用到各类实际应用中,WebSocket技术自身存在的兼容性问题也逐渐显露。例如,WebSocket在火狐浏览器和Chrome浏览器等主浏览器中具有良好的兼容性,并且支持二进制数据的发送和接收。但是IE9浏览器本身并不支持WebSocket协议。也就是说,在使用IE9浏览器时,无法通过WebSocket建立数据传输通道,对于国内的大多数应用场景,WebSocket无法大规模使用。
作为本发明实施例一种可选的的实施方式,本发明实施例还可以通过在WebSocket中增加自动连接的Javascript插件,达到对IE9浏览器的支持,例如具体可以为,通过插件先进行HTTP协议握手,再模拟一个类似WebSocket连接的连接保持通道,这样便可以达到在IE9浏览器中通过数据传输通道进行数据传输的目的。
作为本发明实施例一种可选的的实施方式,本发明实施例还可以设定重连间隔时间增长指数,该指数用以在每次进行重连时,将重连间隔时间增加至上一次重连间隔时间的幂次方倍。例如,设定重连时间增长衰退指数为1.5,则该指数与重连间隔时间的关系为:如果重连间隔时间为1000ms,则第二次重连时,重连间隔时间为10001.5ms,第三次重连时,重连间隔时间为(10001.5)1.5ms,以此类推。通过设置重连间隔时间增长指数,可以使客户端每次重连的间隔时间都会比上一次的长,从而降低系统资源消耗,提高系统的稳定性。当然,重连间隔时间增长指数可以根据系统的实际性能设置。
需要说明的是,如果设定重连间隔时间增长指数为1,表示每次的重连间隔时间相同。
作为本发明实施例一种可选的的实施方式,有时根据实际需求,并不一定每次都需要通过建立WebSocket数据传输通道进行数据传输。因此,可以在WebSocket中,增加是否自动进行WebSocket连接的参数。默认情况下,该参数均设置为true,表示默认自动建立WebSocket数据传输通道。
图2为本发明实施例的综合交通运行分析监测平台进行数据传输时的流程示意图,参考图2,其中,
步骤1表示:综合交通运行分析监测平台的客户端与服务器建立Websocket数据传输通道;
步骤2.1、2.1、2.3均表示:在综合交通运行分析监测平台中选择订阅的数据模块,并在数据模块中订阅多个具有不同主题标识的数据集;
步骤3表示:客户端通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
步骤4.1、4.2、4.3等均表示:服务器接收到已订阅数据集的主题标识,并取消之前订阅的主题;
步骤5表示:服务器查找数据库中的实时交通数据;
步骤6表示;数据库向服务器返回实时交通数据;
步骤7表示:服务器通过WebSocket数据传输通道,向客户端推送与已订阅数据集的主题标识对应的实时交通数据;
步骤8.1、8.2、8.3均表示:客户端更新对应数据模块的数据集中的数据,并显示实时交通数据。
相应于上面的方法实施例,本发明实施例还提供了相应的装置实施例。
如图3所示,本发明实施例提供了一种实时交通数据传输装置,包括:
生成模块201,用于保存对所需交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识。
第一发送模块202,用于通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识。
接收模块203,用于通过所述WebSocket数据传输通道,接收由服务器推送的与已订阅数据集的主题标识对应的实时交通数据。
可选地,第一发送模块202具体可以用于:
当收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
本发明实施例提供的实时交通数据传输装置,通过客户端保存对所需的交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;服务器能够向客户端主动推送与已订阅数据集的主题标识对应的实时交通数据。本发明实施例的推送机制,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。
如图4所示,作为一种可选的实施方式,在图3所示装置的基础上,本发明实施例的实时交通数据传输装置还可以包括:
显示模块204,用于接收与已订阅数据集的主题标识对应的实时交通数据,并在数据模块中,显示与已订阅数据集的主题标识对应的实时交通数据。
更新模块205,用于接收由服务器主动推送的更新后的交通数据至客户端,并更新当前数据模块中已订阅的数据集中的实时交通数据,其中,由服务器主动推送的更新后的交通数据,为当服务器检测到与已订阅数据集的主题标识对应的实时交通数据出现更新时的交通数据。
可选的,本发明实施例的实时交通数据传输装置还可以包括:
第二发送模块206,用于当收到切换数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
取消模块207,用于向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
可选的,本发明实施例的实时交通数据传输装置还可以包括:
设定模块208,用于当WebSocket数据传输通道断开后,客户端和服务器进行重连时,设定重连间隔时间不低于第一预设值;或者,设定重连次数不高于第二预设值;或者,设定重连最大时间不高于第三预设值;或者,设定单次连接超时时间不高于第四预设值。
可选的,本发明实施例的实时交通数据传输装置还可以包括:
对比模块209,用于当客户端判断需要将前台日志和后台日志进行对比时,获取前台日志和后台日志,并对比前台日志和后台日志中包括的内容是否一致;若一致,客户端确定未发生数据丢失;若不一致,客户端确定发生数据丢失。其中,前台日志为客户端与服务器之间所传输数据的日志,后台日志为服务器与数据库之间所传输数据的日志。
可选的,本发明实施例的实时交通数据传输装置还可以包括:
绑定模块2010,用于生成WebSocket数据传输通道对应的Websoket Session;将WebSocket数据传输通道对应的Websoket Session和登录数据传输系统所使用的SessionID进行绑定。
本发明实施例提供的实时交通数据传输装置,通过接收模块,能够接收并显示与已订阅数据集的主题标识对应的实时交通数据,从而为用户提供可视化效果,从而提高产品易用性;通过更新模块,能够使客户端更新当前数据模块中已订阅的数据集中的实时交通数据,从而能够使客户端快速地获取实时交通数据;通过第二发送模块,当收到切换数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,能够向服务器发送最新订阅的数据集的主题标识,从而获取与最新订阅的数据集的主题标识对应的最新交通数据;通过取消模块,能够取消已订阅的数据集,使服务器不再推送与已取消的数据集对应的实时交通数据,从而减少客户端和服务器间的数据传输量,降低服务器压力;通过设定模块,当客户端和服务器进行重连时,能够同时或独立地设定重连间隔时间、重连次数、重连最大时间以及单次连接超时时间,从而避免系统资源消耗变大,保障系统的稳定性;通过对比模块,能够在需要检验数据传输内容性时及时进行检验,从而保证数据传输的准确性;通过绑定模块,能够对非法请求进行拦截,保证数WebSocket据传输通道的安全性。
如图5所示,本发明实施例提供了一种实时交通数据传输系统,包括:客户端301和服务器302,其中,
客户端301,用于保存对所需交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;以及,用于向服务器发送已订阅数据集的主题标识。
服务器302,用于通过WebSocket数据传输通道,向客户端推送与已订阅数据集的主题标识对应的实时交通数据。
本发明实施例提供的实时交通数据传输系统,通过实时交通数据传输系统中的客户端,保存对所需的交通数据的模块划分,生成多个数据模块,其中,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识,并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;通过实时交通数据传输系统中的服务器,能够向客户端主动推送与已订阅数据集的主题标识对应的实时交通数据。本发明实施例的实时交通数据传输系统,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。
作为本发明实施例的一种可选的实施方式,客户端301还可以用于:
接收与已订阅数据集的主题标识对应的实时交通数据,并在数据模块中,显示与已订阅数据集的主题标识对应的实时交通数据。
作为本发明实施例的一种可选的实施方式,客户端301具体可以用于:
当收到所选定的数据模块的模块标识信息时,订阅模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
作为本发明实施例的一种可选的实施方式,服务器302还可以用于:
当发现与已订阅数据集的主题标识对应的实时交通数据出现更新时,服务器主动推送更新后的交通数据至客户端,以使客户端更新当前数据模块中已订阅的数据集中的实时交通数据。
作为本发明实施例的一种可选的实施方式,客户端301还可以用于:
当收到切换数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
作为本发明实施例的一种可选的实施方式,客户端301还可以用于:
向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
作为本发明实施例的一种可选的实施方式,客户端301还可以用于:
当WebSocket数据传输通道断开后,客户端和服务器进行重连时,设定重连间隔时间不低于第一预设值;或者,重连次数不高于第二预设值;或者,重连最大时间不高于第三预设值;或者,单次连接超时时间不高于第四预设值。
作为本发明实施例的一种可选的实施方式,客户端301还可以用于:
当客户端判断需要将前台日志和后台日志进行对比时,获取前台日志和后台日志,并对比前台日志和后台日志中包括的内容是否一致;若一致,客户端根据对比结果,确定未发生数据丢失;若不一致,客户端根据对比结果,确定发生数据丢失。
作为本发明实施例的一种可选的实施方式,客户端301还可以用于:
生成WebSocket数据传输通道对应的Websoket Session;将WebSocket数据传输通道对应的Websoket Session和登录数据传输系统所使用的SessionID进行绑定。
本发明实施例提供的实时交通数据传输系统,能够使客户端更新数据模块中已订阅的数据集中的实时交通数据,从而能够使客户端快速地获取实时交通数据;能够取消已订阅的数据集,使服务器不再推送与已取消的数据集对应的实时交通数据,从而减少客户端和服务器间的数据传输量,降低服务器压力;当客户端和服务器进行重连时,能够同时或独立地设定重连间隔时间、重连次数、重连最大时间以及单次连接超时时间,从而避免系统资源消耗变大,保障系统的稳定性;能够在需要检验数据传输内容性时及时进行检验,从而保证数据传输的准确性;还能够对非法请求进行拦截,保证WebSocket数据传输通道的安全性。
本发明实施例还提供了一种电子设备,如图6所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401、通信接口402、存储器403通过通信总线404完成相互间的通信,
存储器403,用于存放计算机程序;
处理器401,用于执行存储器403上所存放的程序时,实现如下步骤:
保存对所需交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;
通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
通过WebSocket数据传输通道,接收由服务器推送的与已订阅数据集的主题标识对应的实时交通数据。
本发明实施例提供的电子设备,通过客户端保存对所需的交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;服务器能够向客户端主动推送与已订阅数据集的主题标识对应的实时交通数据。本发明实施例的推送机制,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,用以实现如下步骤:
保存对所需交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;
通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
通过WebSocket数据传输通道,接收由服务器推送的与已订阅数据集的主题标识对应的实时交通数据。
本发明实施例提供的计算机可读存储介质,通过客户端保存对所需的交通数据的模块划分,生成多个数据模块,每个数据模块具有唯一的模块标识,每个数据模块中包括多个数据集,且每个数据集具有唯一的主题标识;并通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;服务器能够向客户端主动推送与已订阅数据集的主题标识对应的实时交通数据。本发明实施例的推送机制,只要有数据更新,即可以进行数据推送,从而能够保证客户端更加快速地获取实时交通数据。
对于装置/系统/电子设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,本发明实施例的装置、系统、电子设备及存储介质分别是应用上述基于随机博弈理论的动态竞争窗口调整方法的装置、系统、电子设备及存储介质,则上述基于随机博弈理论的动态竞争窗口调整方法的所有实施例均适用于该装置、系统、电子设备及存储介质,且均能达到相同或相似的有益效果。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (17)
1.一种实时交通数据传输方法,应用于客户端,其特征在于,所述方法包括:
保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;
通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
通过所述WebSocket数据传输通道,接收由服务器推送的与所述已订阅数据集的主题标识对应的实时交通数据;
当与所述已订阅数据集的部分主题标识对应的实时交通数据出现更新时,接收由服务器推送的更新后的交通数据,对所述部分主题标识对应的数据集进行更新;或者,将所述数据模块的所有数据集中的实时交通数据进行更新。
2.根据权利要求1所述的实时交通数据传输方法,其特征在于,所述通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识,具体包括:
收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
3.根据权利要求2所述的实时交通数据传输方法,其特征在于,所述方法还包括:
当收到切换所述数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过所述WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
4.根据权利要求3所述的实时交通数据传输方法,其特征在于,所述方法还包括:
向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
5.根据权利要求1-4任一项所述的实时交通数据传输方法,其特征在于,当所述WebSocket数据传输通道断开后,所述方法还包括以下步骤的一个或多个:
客户端和服务器端进行重连,重连间隔时间不低于第一预设值;
客户端和服务器端进行重连,重连次数不高于第二预设值;
客户端和服务器端进行重连,重连最大时间不高于第三预设值;
客户端和服务器端进行重连,单次连接超时时间不高于第四预设值。
6.根据权利要求1-4任一项所述的实时交通数据传输方法,其特征在于,所述方法还包括:
根据日志打印预设值,判断是否将前台日志和后台日志进行对比,其中,所述前台日志为客户端与服务器之间所传输数据的日志,所述后台日志为服务器与数据库之间所传输数据的日志;
当判断需要将前台日志和后台日志进行对比时,获取所述前台日志和所述后台日志,并对比所述前台日志和后台日志中包括的内容是否一致;
若一致,根据对比结果,确定未发生数据丢失;
若不一致,根据对比结果,确定发生数据丢失。
7.根据权利要求1-4任一项所述的实时交通数据传输方法,其特征在于,所述方法还包括:
生成所述WebSocket数据传输通道对应的Websoket Session;
将所述WebSocket数据传输通道对应的Websoket Session和登录数据传输系统所使用的SessionID进行绑定。
8.一种实时交通数据传输装置,其特征在于,所述装置包括:
生成模块,用于保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;
第一发送模块,用于通过WebSocket数据传输通道,向服务器发送已订阅数据集的主题标识;
接收模块,用于通过所述WebSocket数据传输通道,接收由服务器推送的与所述已订阅数据集的主题标识对应的实时交通数据;
更新模块,用于在与所述已订阅数据集的部分主题标识对应的实时交通数据出现更新时,接收由服务器推送的更新后的交通数据,对所述部分主题标识对应的数据集进行更新;或者,将所述数据模块的所有数据集中的实时交通数据进行更新。
9.根据权利要求8所述的实时交通数据传输装置,其特征在于,所述第一发送模块,具体用于:
当收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
10.根据权利要求9所述的实时交通数据传输装置,其特征在于,所述装置还包括:
第二发送模块,用于当收到切换所述数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过所述WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
11.根据权利要求10所述的实时交通数据传输装置,其特征在于,所述装置还包括:
取消模块,用于向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
12.一种实时交通数据传输系统,其特征在于,所述系统包括:
客户端,用于保存对所需交通数据的模块划分,生成多个数据模块,每个所述数据模块具有唯一的模块标识,每个所述数据模块中包括多个数据集,且每个所述数据集具有唯一的主题标识;以及,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识;
服务器,用于通过所述WebSocket数据传输通道,向客户端推送与所述已订阅数据集的主题标识对应的实时交通数据;
其中,所述客户端,还用于当与所述已订阅数据集的部分主题标识对应的实时交通数据出现更新时,接收由服务器推送的更新后的交通数据,对所述部分主题标识对应的数据集进行更新;或者,将所述数据模块的所有数据集中的实时交通数据进行更新;
所述服务器,还用于当与所述已订阅数据集的部分主题标识对应的实时交通数据出现更新时,向所述客户端推送的更新后的交通数据。
13.根据权利要求12所述的实时交通数据传输系统,其特征在于,所述客户端具体用于:
当收到所选定的所述数据模块的模块标识信息时,订阅所述模块标识对应的数据模块中的数据集,通过WebSocket数据传输通道向服务器发送已订阅数据集的主题标识。
14.根据权利要求13所述的实时交通数据传输系统,其特征在于,所述客户端还用于:
当收到切换所述数据模块的操作信息时,将切换后所选定的数据模块中的数据集作为最新订阅的数据集,并通过所述WebSocket数据传输通道向服务器发送最新订阅的数据集的主题标识。
15.根据权利要求14所述的实时交通数据传输系统,其特征在于,所述客户端还用于:
向服务器发送取消订阅切换前所选定的数据模块中的数据集的指令,该指令中包含切换前所选定的数据模块中的数据集的主题标识。
16.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一项所述的方法步骤。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710821692.XA CN109495530B (zh) | 2017-09-13 | 2017-09-13 | 一种实时交通数据传输方法、传输装置及传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710821692.XA CN109495530B (zh) | 2017-09-13 | 2017-09-13 | 一种实时交通数据传输方法、传输装置及传输系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109495530A CN109495530A (zh) | 2019-03-19 |
CN109495530B true CN109495530B (zh) | 2022-03-04 |
Family
ID=65687322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710821692.XA Active CN109495530B (zh) | 2017-09-13 | 2017-09-13 | 一种实时交通数据传输方法、传输装置及传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109495530B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110460618B (zh) * | 2019-08-26 | 2022-06-07 | 南京国电南自轨道交通工程有限公司 | 一种基于en50159标准的综合监控系统中安全的通信方法 |
CN111221665A (zh) * | 2019-12-25 | 2020-06-02 | 中科曙光国际信息产业有限公司 | 基于浏览器的容器远程登陆方法和装置 |
CN112492039B (zh) * | 2020-12-02 | 2022-09-02 | 广东博智林机器人有限公司 | 运行于多内核的数据分发服务方法、及装置 |
CN112965466B (zh) | 2021-02-18 | 2022-08-30 | 北京百度网讯科技有限公司 | 自动驾驶系统的还原测试方法、装置、设备及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146058A (zh) * | 2007-11-13 | 2008-03-19 | 北京中搜在线软件有限公司 | 互联网即时信息的共享订阅系统及共享订阅方法 |
CN101902412A (zh) * | 2010-06-28 | 2010-12-01 | 北京易华录信息技术股份有限公司 | 一种交通管理数据交互方法及消息服务系统 |
CN106534241A (zh) * | 2015-09-11 | 2017-03-22 | 北京奇虎科技有限公司 | 实时数据更新方法、装置和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7328266B2 (en) * | 2001-12-18 | 2008-02-05 | Perftech, Inc. | Internet provider subscriber communications system |
US7836123B2 (en) * | 2008-05-13 | 2010-11-16 | International Business Machines Corporation | System and method for non-HTTP session based publish/subscribe support using pre-emptive subscriptions |
CN104601642B (zh) * | 2014-07-10 | 2018-11-09 | 腾讯科技(深圳)有限公司 | 实时路况分享方法、装置及系统 |
-
2017
- 2017-09-13 CN CN201710821692.XA patent/CN109495530B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146058A (zh) * | 2007-11-13 | 2008-03-19 | 北京中搜在线软件有限公司 | 互联网即时信息的共享订阅系统及共享订阅方法 |
CN101902412A (zh) * | 2010-06-28 | 2010-12-01 | 北京易华录信息技术股份有限公司 | 一种交通管理数据交互方法及消息服务系统 |
CN106534241A (zh) * | 2015-09-11 | 2017-03-22 | 北京奇虎科技有限公司 | 实时数据更新方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109495530A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109495530B (zh) | 一种实时交通数据传输方法、传输装置及传输系统 | |
KR102167613B1 (ko) | 메시지 푸시 방법 및 장치 | |
US11096051B2 (en) | Connection establishment method, device, and system | |
CN107040494B (zh) | 用户账号异常防范方法和系统 | |
US20170141932A1 (en) | Internet Access Traffic Sharing Method, Device and Terminal | |
CN108200218B (zh) | 一种实现负载均衡的方法、装置及电子设备 | |
US9900385B2 (en) | Connection management device, communication system, connection management method, and computer program product | |
CN112738548B (zh) | 一种流媒体调度方法、装置、设备及存储介质 | |
CN104301140A (zh) | 业务请求响应方法、装置和系统 | |
CN103312593B (zh) | 一种消息分发系统及方法 | |
CN104796406A (zh) | 一种应用识别方法及装置 | |
CN105554099A (zh) | 一种采集服务器负载均衡的方法及装置 | |
CN107613023B (zh) | 设备连接方法及装置 | |
CN111092904B (zh) | 网络连接方法和装置 | |
US20150149629A1 (en) | User online state querying method and apparatus | |
CN110809262A (zh) | 一种基于coap协议的物联网设备运维管理方法 | |
US9967163B2 (en) | Message system for avoiding processing-performance decline | |
CN108632355B (zh) | 一种家电网络选路方法、控制终端、可读存储介质及设备 | |
EP3195528B1 (en) | Application control interworking in network | |
US20220141153A1 (en) | Server communication method, broadband access server, and system | |
CN105163335B (zh) | 一种网络接入管理方法、服务器、移动终端以及系统 | |
CN110247808B (zh) | 信息发送方法、装置、设备及可读存储介质 | |
CN112689284B (zh) | 无线网络密码修改方法、装置、设备及存储介质 | |
CN111427703A (zh) | 工业数据实时展示方法及系统 | |
CN110730127A (zh) | 一种bgp会话建立方法、装置及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |