一种提供道路实时路况服务的系统转让专利

申请号 : CN201511017434.3

文献号 : CN106251623B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李伟陈智宏王立勋隋莉颖黄建玲程磊张永才方秀川

申请人 : 北京市交通信息中心

摘要 :

本发明提供一种提供道路实时路况服务的系统。所述系统通过将不断变化的道路路链状态保存于系统内存中,并将道路路链状态切成不同层级的地图切片进行缓存,从而使得其能够克服现有技术中道路路况显示不及时的缺陷,以满足道路路况实时显示的要求,同时也降低了对GIS服务器性能的要求。

权利要求 :

1.一种提供道路实时路况服务的系统,其特征在于,所述系统包括基于内存数据源的数据处理模块、道路路链数据更新模块、动态切图处理模块和前端浏览器调用模块,其中,所述基于内存数据源的数据处理模块包括道路路链初始化单元、道路路链状态修改单元和基于OGC标准的web地图服务单元;

所述道路路链初始化单元,用于将从外部数据库中获取的用于显示道路路况的道路路链空间数据保存于内存中,其中,所述道路路链空间数据包括由道路路链编号和初始道路路链状态构成的初始道路路链数据;

所述道路路链数据更新模块,用于定时从外部数据库中获取包括道路路链编号和某一时刻道路路链状态的某一时刻道路路链数据,并将获取到的所述某一时刻道路路链数据发送至所述道路路链状态修改单元,以及在接收到所述道路路链状态修改单元的第一消息后向所述动态切图处理模块发送第二消息,所述第二消息用于触发所述动态切图处理模块对已更新的道路路况切片进行缓存;

所述道路路链状态修改单元,用于根据接收到的所述某一时刻道路路链数据修改所述内存中的与所述某一时刻道路路链数据中的道路路链编号对应的道路路链状态,以完成对所述内存存储的道路路况的更新,并向所述道路路链数据更新模块反馈第一消息,所述第一消息用于表明已完成路况更新的指示消息;

所述动态切图处理模块,用于在接收到所述第二消息后,根据预先设置的GIS地图层级和各个层级地图的切片尺寸计算每个地图切片的BBox参数,以形成各个层级地图的BBox参数集合,并向所述基于OGC标准的web地图服务单元发送包括所述各个层级地图的BBox参数集合的第一请求,以及用于以每个地图切片所在的GIS地图层级、横轴编号和纵轴编号作为每个地图切片的存储路径,将所述对应的地图切片的集合缓存到磁盘中;

所述基于OGC标准的web地图服务单元,用于根据所述第一请求的所述各个层级地图的BBox参数集合,从内存中检索出对应的道路路链以形成对应的地图切片的集合,并向所述动态切图处理模块返回所述对应的地图切片的集合;

所述前端浏览器调用模块,用于根据用户输入的GIS地图区域坐标从所述磁盘中获取对应GIS地图区域的地图切片,并将获取到的对应GIS地图区域的地图切片在GIS地图上叠加显示。

2.根据权利要求1所述的系统,其特征在于,所述道路路链空间数据的道路路链编号和相应的道路路链状态以B树结构存储于所述内存中,其中,B树结构的关键字为所述道路路链的编号。

说明书 :

一种提供道路实时路况服务的系统

技术领域

[0001] 本发明涉及路况监控技术领域,尤其涉及一种提供道路实时路况服务的系统。

背景技术

[0002] 现有技术中,在GIS地图上实时显示道路路况的主要做法通常是:GIS服务器根据前端浏览器的服务请求,从GIS数据库读取道路路链状态数据,并将所述道路路链状态数据生成对应的请求图片返回给所述前端浏览器,以为用户显示其请求的实时道路路况。
[0003] 在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:
[0004] 在现有的国产软硬件环境中,由于GIS服务器的CPU性能有限,GIS服务器在生成前端浏览器需要的图片时耗时太长,从而导致部署在国产软硬件环境下的道路路况显示不及时,并且有卡顿现象。

发明内容

[0005] 本发明提供的提供道路实时路况服务的系统,其能够满足前端浏览器实时显示道路路况的要求,具有处理速度快且对GIS服务器性能要求低等优点。
[0006] 第一方面,本发明提供一种提供道路实时路况服务的系统,所述系统包括所述系统包括基于内存数据源的数据处理模块、道路路链数据更新模块、动态切图处理模块和前端浏览器调用模块,其中,所述基于内存数据源的数据处理模块包括道路路链初始化单元、道路路链状态修改单元和基于OGC标准的web地图服务单元;
[0007] 所述道路路链初始化单元,用于将从外部数据库中获取的用于显示道路路况的道路路链空间数据保存于内存中,其中,所述道路路链空间数据包括由道路路链编号和初始道路路链状态构成的初始道路路链数据;
[0008] 所述道路路链数据更新模块,用于定时从外部数据库中获取包括道路路链编号和某一时刻道路路链状态的某一时刻道路路链数据,并将获取到的所述某一时刻道路路链数据发送至所述道路路链状态修改单元,以及在接收到所述道路路链状态修改单元的第一消息后向所述动态切图处理模块发送第二消息,所述第二消息用于触发所述动态切图处理模块对已更新的道路路况切片进行缓存;
[0009] 所述道路路链状态修改单元,用于根据接收到的所述某一时刻道路路链数据修改所述内存中的与所述某一时刻道路路链数据中的道路路链编号对应的道路路链状态,以完成对所述内存存储的道路路况的更新,并向所述道路路链数据更新模块反馈第一消息,所述第一消息用于表明已完成路况更新的指示消息;
[0010] 所述动态切图处理模块,用于在接收到所述第二消息后,根据预先设置的GIS地图层级和各个层级地图的切片尺寸计算每个切片的BBox参数,以形成各个层级地图的BBox参数集合,并向所述基于OGC标准的web地图服务单元发送包括所述各个层级地图的BBox参数集合的第一请求,以及用于以每个地图切片所在的GIS地图层级、横轴编号和纵轴编号作为每个地图切片的存储路径,将所述对应的地图切片的集合缓存到磁盘中;
[0011] 所述基于OGC标准的web地图服务单元,用于根据所述第一请求的所述各个层级地图的BBox参数集合,从内存中检索出对应的道路路链以形成对应的地图切片的集合,并向所述动态切图处理模块返回所述对应的地图切片的集合;
[0012] 所述前端浏览器调用模块,用于根据用户输入的GIS地图区域坐标从所述磁盘中获取对应GIS地图区域的地图切片,并将获取到的对应GIS地图区域的地图切片在GIS地图上叠加显示。
[0013] 优选地,所述道路路链空间数据的道路路链编号和相应的道路路链状态以B树结构存储于所述内存中,其中,B树结构的关键字为所述道路路链的编号。
[0014] 本发明实施例提供的提供道路实时路况服务的系统,与现有技术相比,一方面,其通过将不断变化的道路路链状态保存于系统内存中,并将道路路链状态切成不同层级的地图切片进行缓存,从而使得其能够克服现有技术中道路路况显示不及时的缺陷,以满足道路路况实时显示的要求,同时也降低了对GIS服务器性能的要求。

附图说明

[0015] 图1为本发明一实施例提供道路实时路况服务的系统的结构示意图;
[0016] 图2为本发明的提供道路实时路况服务的系统的实时路况的显示效果图。

具体实施方式

[0017] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0018] 本发明提供一种提供道路实时路况服务的系统,如图1所示,所述系统包括基于内存数据源的数据处理模块11、道路路链数据更新模块12、动态切图处理模块13和前端浏览器调用模块14,其中,所述基于内存数据源的数据处理模块11包括道路路链初始化单元111、道路路链状态修改单元112和基于OGC标准的web地图服务单元113;
[0019] 所述道路路链初始化单元111,用于将从外部数据库中获取的用于显示道路路况的道路路链空间数据保存于内存中,其中,所述道路路链空间数据包括由道路路链编号和初始道路路链状态构成的初始道路路链数据;
[0020] 其中,所述道路路链空间数据示意GML(Geography Markup Language,地图标识语言)形式进行描述。
[0021] 所述道路路链数据更新模块12,用于定时从外部数据库中获取包括道路路链编号和某一时刻道路路链状态的某一时刻道路路链数据,并将获取到的所述某一时刻道路路链数据发送至所述道路路链状态修改单元112,以及在接收到所述道路路链状态修改单元112的第一消息后向所述动态切图处理模块13发送第二消息,所述第二消息用于触发所述动态切图处理模块13对已更新的道路路况切片进行缓存;
[0022] 所述道路路链状态修改单元112,用于根据接收到的所述某一时刻道路路链数据修改所述内存中的与所述某一时刻道路路链数据中的道路路链编号对应的道路路链状态,以完成对所述内存存储的道路路况的更新,并向所述道路路链数据更新模块12反馈第一消息,所述第一消息用于表明已完成路况更新的指示消息;
[0023] 所述动态切图处理模块13,用于在接收到所述第二消息后,根据预先设置的GIS地图层级和各个层级地图的切片尺寸计算每个切片的BBox参数,以形成各个层级地图的BBox参数集合,并向所述基于OGC(Open Geospatial Consortium-OGC,开放地理空间信息联盟)标准的web地图服务单元113发送包括所述各个层级地图的BBox参数集合的第一请求,其中,用于以每个地图切片所在的GIS地图层级、横轴编号和纵轴编号作为每个地图切片的存储路径,将所述对应的地图切片的集合缓存到磁盘中;
[0024] 所述基于OGC标准的web地图服务单元113,用于根据所述第一请求的所述各个层级地图的BBox参数集合,从内存中检索出对应的道路路链以形成对应的地图切片的集合,并向所述动态切图处理模块13返回所述对应的地图切片的集合;
[0025] 所述前端浏览器调用模块14,用于根据用户输入的GIS地图区域坐标从所述磁盘中获取对应GIS地图区域的地图切片,并将获取到的对应GIS地图区域的地图切片在GIS地图上叠加显示。
[0026] 其中,为了进一步提高根据道路路链编号从内存中查找对应的道路路链的速度,这里的所述道路路链空间数据的道路路链编号和相应的道路路链状态以B树结构(Balance Tree,平衡多叉树)存储于所述内存中,其中,B树结构的关键字为所述道路路链的编号。
[0027] 本发明实施例提供的提供道路实时路况服务的系统,与现有技术相比,一方面,其通过将不断变化的道路路链状态保存于系统内存中,并将道路路链状态切成不同层级的地图切片进行缓存,从而使得其能够克服现有技术中道路路况显示不及时的缺陷,以满足道路路况实时显示的要求,同时也降低了对GIS服务器性能的要求。
[0028] 其中,所述动态切图处理模块13的工作流程,具体为:
[0029] S21、接收道路路链更新模块发送的更新服务请求;
[0030] S22、从预先设置的GIS地图层级列表中逐一地取出一个地图层级;
[0031] S23、从所取出的一个地图层级中得到该地图层级中各个地图切片的存储位置,所述各个地图切片的存储位置由各个地图切片的横轴编号和纵轴编号表示;
[0032] S24、根据上述得到的各个地图层级以及每个地图层级中的各个地图切片的横轴编号和纵轴编号构造每个地图切片的BBox参数;
[0033] S25、根据S24步骤得到的BBox参数调用所述基于OGC标准的web地图服务单元113来生成对应的地图切片,并将返回的地图切片以每个地图切片所在的GIS地图层级、横轴编号和纵轴编号作为每个地图切片的存储路径,将所述对应的地图切片的集合缓存到磁盘中。
[0034] 如图2所示,为本发明的提供道路实时路况服务的系统所显示的路况效果图。
[0035] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0036] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。