一种地图显示系统和方法

文档序号:6332244阅读:172来源:国知局
专利名称:一种地图显示系统和方法
技术领域
本发明涉及地图显示领域,尤其涉及一种地图显示系统和方法。
背景技术
随着社会的不断进步,互联网应用的日益广泛,基于位置的业务也在逐渐被用户 接受并普及。在移动互联网的迅速发展下,目前已经实现不同精度的定位应用,用户随时可 以通过移动终端中的应用程序使用GIS的相关业务,如定位、公交查询、路线查询等功能。现有的移动互联网地图服务器端系统中,目前可分为地图数据提供商,和地图应 用提供商。两者负责的主要业务有所不同,地图数据提供商专注于地图数据、地图引擎的开 发;而地图应用提供商专注于产品应用的开发。现有技术中,移动互联网地图应用系统的实现方案中数据获取方面常见的做法是通过地图数据提供商的接口中获取数据的,然后将 常用的地图数据存放到缓存,将不常用的数据存放到数据库中,在通过从缓存和数据库中 获取数据。这种做法存在性能问题,随着用户的增加,常用地图数据量会过大,按传统的缓存 方式存放会出现缓存不够用的情况,因为根据不同的操作系统,每个进程操作内存的大小 是有限止的,一个32位的操作系统,一个进程最大可操作为4G内存。当缓存不够时直接访 问数据库中的地图数据,大量的数据是可以存放到数据库中的,但是随着用户的增加,数据 库的I/O性能会下降,会影响获取地图数据的速度从而导致访问速度变慢。网络连接方面传统的Server/Client实现是基于Thread per request,即服务 器为每个客户端请求建立一个线程处理,单独负责处理一个客户的请求。比如像Tomcat、 Resin等Web服务器就是这样实现的。当然为了减少瞬间峰值问题,服务器一般都使用线程 池,规定了同时并发的最大数量,避免了线程的无限增长。但这样存在一个问题当有大量用户同时通过Socket或HTTP获取大量图片,所有 的线程都在传输图片,服务器的线程池已用完时,即使接下来的请求者仅仅请求一个很小 字节的图片,服务器也无法响应了,只有等到线程池中有空闲的线程出现。

发明内容
本发明实施例的目的在于提出一种地图显示系统,旨在解决现有技术地图显示系 统的网络传输速度慢,并发能力不强,处理请求的响应时间长的问题。一种地图显示系统,所述系统包括网络传输装置、地图协议装置、分布式缓存装置,所述地图协议装置分别于网络传 输装置和分布式缓存装置相连。网络传输装置,用于NIO框架适配、数据接收与发送、数据加解码;地图协议装置,与所述网络传输装置相连接,用于处理协议的解析和组装、协议的 派发、协议逻辑处理、键值生成;
分布式缓存装置,与所述地图协议装置相连接,用于存放地图数据的缓存组、缓存 分区、缓存备份、缓存还原。本发明实施例的另一目的在于提出一种地图显示方法,所述方法包括根据XML文件配置支持的NIO框架,根据所述框架实现了 Socket和HTTP ;接收来自客户端的网络请求,发送响应数据给客户端,并对传输的数据进行加解 码;接收来自网络传输过来的数据,并对所述数据进行协议解析、业务逻辑处理、生成 键值和访问缓存接口,在完成业务逻辑处理后将返回的数据进行协议组装;根据缓存接口的访问对缓存分区文件划分的区域缓存进访问。本发明实施例的另一目的在于提出一种网络传输装置,所述网络传输装置包括NIO框架适配模块,用于根据抽象类定义抽象方法,通过扩展该抽象类和配置相应 属性文件的方式,实现了 NIO框架的适配;网络协议支持模块,与所述NIO框架适配模块相连接,用于支持移动终端的网络 协议;数据收接模块,与所述网络协议支持模块相连接,用于接收网络协议支持模块,传 送过来的数据;数据发送模块,与所述网络协议支持模块相连接,用于将协议加解码传过来的数 据发送给网络协议支持模块;协议加解码模块,与所述数据发送模块和数据接收模块相连接,用于将数据接收 模块传输过来的数据进行解码后发送给协议解析模块,接收协议组装模块发送的数据并进 行加码后发送给数据发送模块。本发明实施例的另一目的在于提出一种地图协议装置,所述地图协议装置包括协议解析模块,用于将接受到的网络数据按照预定格式进行协议解析,并将解析 后的数据发送到业务逻辑处理模块;其中所述预定格式为“数据包长度+协议号+协议相 关属性+请求的数据包内容”;协议组装模块,用于组装来自业务逻辑处理模块的响应数据,将所述响应数据与 协议头进行组装,并发送组装后的协议包;其中所述组装格式为“数据包长度+协议号+ 协议相关属性+响应的数据包内容”;业务逻辑处理模块,与协议组装模块相连接,用于将解析后的数据派发到相应的 协议逻辑处理功能上;键值组装模块,与所述业务逻辑处理模块相连接,用于当业务逻辑处理模块处理 数据需要获取非实时数据时,生成相应的键值,通过该键值作为访问缓存的参数;所述生成 相应的键值的格式分为两种一种是"键值类型+协议相关属性",另一种是"键值类型+ 缩放级别+坐标偏移量";缓存接口模块,与所述键值组装模块相连接,用与作为访问分布式缓存的引用句 柄,所述句柄的初始化根据读取缓存分区模块的配置而生成,所述缓存接口模块中包含一 组缓存引用句柄,每个引用句柄与缓存组模块中的区域缓存子模块相连接;日志模块,与所述的地图协议装置中所有模块相连接,用于记录请求日志,逻辑性 处理日志和缓存访问日志,方便跟踪调试所述地图协议装置;
本发明实施例的另一目的在于提出一种分布式缓存装置,所述分布式缓存装置包 括缓存分区模块,用于为缓存接口功能提供初始化参数,以及根据缓存类型,缩放级 别,坐标偏移量将缓存接口连接到不同的缓存组模块中的区域缓存子模块;缓存模块组,与所述缓存分区模块相连接,用于提供统一的缓存访问接口,使用 Telnet协议作为基础协议,利用内存作为缓存,通过支持32/64位操作系统最大可利用内 存不受物理内存限制,此模块中包括多个区域缓存子模块;定时备份模块,与所述缓存模块组相连接,用于根据定时任务,定时将缓存模块组 中的多个区域缓存子模块的缓存数据持久化保存到数据库中;数据还原模块,与所述缓存模块组相连接,用于将备份数据还原到缓存模块组中 的多个区域缓存子模块中。本发明实施例的另一目的在于提出一种网络传输方法,所述方法包括根据XML 文件配置支持的NIO框架;接收用户请求,根据用户访问的端口区分是HTTP协议还是Socket协议;根据不同 的协议调用请求数据的相应的回调方法,同时将所述请求数据以参数的方式传入所述相应 的回调方法,调用数据响应方法,并发送所述数据响应方法传回的响应数据;使过滤器机制对所述请求数据与所述响应数据进行加解码。本发明实施例的另一目的在于提出一种地图协议方法,所述方法包括将用户的请求数据以自定义协议的结构进行解析;对解析后的自定义协议中的协议号进行协议划分,并派发到相应的地图处理逻辑 方法中,再根据具体的请求数据进行相应的逻辑处理;生成缓存键值,获取缓存集合接口句柄,调用该句柄获取缓存接口方法,同时将所 述缓存键值传入,分析所述缓存键值是否在有效范围内,如在有效范围内则返回相应的缓存接口对象,通过所述缓存接口对象获取缓存数 据;如果所述缓存键值不在有效范围内或获取缓存数据失败,则访问第三方数据口来 获取数据;将返回的数据以自定义协议的结构进行组装并返回。本发明实施例的另一目的在于提出一种分布式缓存方法,所述方法包括配置缓存分区文件,将缓存键值以范围的方式配置到分区文件中;接收缓存接口请求,根据缓存分区配置,访问相应的缓存服务器,获取数据;启动定时任务,将缓存中的数据备份到数据库中,然后将数据库定时备份;批量还原数据到指定的缓存服务器列表中;访问第三方接口,生成缓存数据,根据缓存分区配置,将数据存放到相应的缓存服 务器中。本发明的有益效果本发明通过实现现有NIO框架,加快了网络传输速度并且解 决了网络并发问题,为系统提供了可伸缩性;通过实现自定义协议,精简了请求/响应的数 据包更加快了请求响应的速度;充分利用缓存的特性,数据存储结构是以缓存为主,所有数 据全部放到分布式缓存中,从而加快了处理请求的响应时间。


图1是本发明实施例一种地图显示服务器系统结构图;图2是本发明实施例一种地图显示服务器详细系统结构图;图3是本发明实施例网络传输装置的系统结构示意图;图4是本发明实施例地图协议装置的系统结构示意图;图5是本发明实施例分布式缓存装置的系统结构示意图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对 本发明进行进一步详细说明,为了便于说明,仅示出了与本发明实施例相关的部分。应当理 解,此处所描写的具体实施例,仅仅用于解释本发明,并不用以限制本发明。本发明对传统的地图应用服务端系统的网络模块、逻辑处理模块、数据存储模块 进行了重新的设计与优化。通过实现现有NIO框架,加快了网络传输速度并且解决了网络 并发问题,同时支持简单的扩展和配置就可以实现适配现有优秀的NIO框架,为系统提供 了可伸缩性;通过实现自定义协议,精简了请求/响应的数据包,去除其它协议所带来的多 余属性,起到了给数据包减肥的做用,规范地图数据请求协议规格,更加快了请求响应的速 度;通过调整数据存储结构,使用高速分布式缓存服务器组,将根据地图数据的参数生成相 应的键值,根据该键值划分缓存分区,分别值数据存放到不同的缓存服务器中,以加快获取 地图数据的速度,同时通过缓存定时备份与还原机制,实现了缓存数据持久化,有效的解决 了缓存数据丢失等问题,充分利用缓存的特性,从而加快了处理请求的响应时间。调整后的 数据存储结构是以缓存为主,所有数据全部放到分布式缓存中。图1、图2是本发明实施例一种地图显示服务器系统结构图,所述服务器包括网络传输装置、地图协议装置、分布式缓存装置,所述地图协议装置分别于网络传 输装置和分布式缓存装置相连。网络传输装置,用于NIO框架适配、数据接收与发送、数据加解码;如图3所述为网 络传输装置的系统结构图,所述网络传输装置包括NIO框架适配模块,用于根据抽象类定义抽象方法,通过扩展该抽象类和配置相应 属性文件的方式,实现了 NIO框架的适配;网络协议支持模块,与所述NIO框架适配模块相连接,用于支持移动终端的网络 协议;其中所述网络协议包括Socket、HTTP1. 0/HTTP1. 1等移动终端流行的网络协议数据收接模块,与所述网络协议支持模块相连接,用于接收网络协议支持模块,传 送过来的数据;数据发送模块,与所述网络协议支持模块相连接,用于将协议加解码传过来的数 据发送给网络协议支持模块;协议加解码模块,与所述数据发送模块和数据接收模块相连接,用于将数据接收 模块传输过来的数据进行解码后发送给协议解析模块,接收协议组装模块发送的数据并进 行加码后发送给数据发送模块。地图协议装置,与所述网络传输装置相连接,用于处理协议的解析和组装、协议的
9派发、协议逻辑处理、键值生成;如图4所述为地图协议装置的系统结构图,所述地图协议装置包括协议解析模块,与所述协议加解码模块相和日志模块连接,用于解析网络传输装 置中的协议加解码模块发送的数据,根据预定格式进行协议解析,并将解析后的数据发送 到业务逻辑处理模块;其中所述预定格式为“数据包长度+协议号+协议相关属性+请求 的数据包内容”;协议组装模块,与所述协议加解码模块和日志模块相连接,用于组装来自业务逻 辑处理模块的响应数据,将所述响应数据与协议头进行组装,并将组装后的协议包发送到 网络传输装置的协议加解码模块;其中所述组装格式为“数据包长度+协议号+协议相关 属性+响应的数据包内容”;业务逻辑处理模块,与所述协议解析模块、协议组装模块相连接,用于将协议解析 模块解析后的数据派发到相应的协议逻辑处理功能上;其协议逻辑处理具体功能包括(1)取地图(2)取实时路况地图信息(3)获取截图(4)发送地图彩信(5)地图纠错(6)搜索信息(7)搜索第三方数据信息(8)基站定位(9)通过GPS模块实际经纬度获取偏移量(10)驾车路线查询(11)关键字查询公交线路名称(12)根据公交路线名称查询公交线路信息(13)根据经纬度及城市代码查询大城市公交换乘(14)根据当前中心坐标获取不同比例下相对于中心经纬度的偏移量(15)心跳包(16)地址解析服务(17)得到地理位置经纬度、城市名称等;键值组装模块,与所述业务逻辑处理模块相连接,用于当业务逻辑处理模块处理 数据需要获取非实时数据时,生成相应的键值,通过该键值作为访问缓存的参数;所述生成 相应的键值的格式分为两种一种是"键值类型+协议相关属性"、另一种是"键值类型+ 缩放级别+坐标偏移量"。缓存接口模块,与所述键值组装模块相连接,用与作为访问分布式缓存装置的引 用句柄,所述句柄的初始化根据读取缓存分区模块的配置而生成,所述缓存接口模块中包 含一组缓存引用句柄,每个引用句柄与缓存组模块中的区域缓存子模块相连接;日志模块,与所述的地图协议装置中所有模块相连接,用于记录请求日志,逻辑性 处理日志和缓存访问日志,方便跟踪调试所述地图协议装置;分布式缓存装置,与所述地图协议装置相连接,用于存放地图数据的缓存组、缓存分区、缓存备份、缓存还原。如图5所述为分布式缓存装置的系统结构图,所述分布式缓存装置包括缓存分区模块,与所述缓存接口模块相连接,用于为缓存接口功能提供初始化参 数,以及根据缓存类型,缩放级别,坐标偏移量将缓存接口连接到不同的缓存组模块中的区 域缓存子模块;缓存模块组,与所述缓存分区模块相连接,用于提供统一的缓存访问接口,使用 Telnet协议作为基础协议,利用内存作为缓存,通过支持32/64位操作系统最大可利用内 存不受物理内存限制,此模块中还包括多个区域缓存子模块;定时备份模块,与所述缓存模块组相连接,此模块为自动触发,用于根据定时任 务,定时将缓存模块组中的多个区域缓存子模块的缓存数据持久化保存到数据库中;数据还原模块,与所述缓存模块组相连接,此模块为手动触发,用于将备份数据还 原到缓存模块组中的多个区域缓存子模块中。本发明实施例对传统的地图应用服务端系统的网络模块、逻辑处理模块、数据存 储模块进行了重新的设计与优化。通过实现现有Nio框架,加快了网络传输速度并且解决 了网络并发问题,同时支持简单的扩展和配置就可以实现适配现有优秀的NIO框架,为系 统提供了可伸缩性;通过实现自定义协议,精简了请求/响应的数据包,去除其它协议所带 来的多余属性,起到了给数据包减肥的做用,规范地图数据请求协议规格,更加快了请求响 应的速度;通过调整数据存储结构,使用高速分布式缓存服务器组,将根据地图数据的参数 生成相应的键值,根据该键值划分缓存分区,分别值数据存放到不同的缓存服务器中,以加 快获取地图数据的速度,同时通过缓存定时备份与还原机制,实现了缓存数据持久化,有效 的解决了缓存数据丢失等问题,充分利用缓存的特性,从而加快了处理请求的响应时间。调 整后的数据存储结构是以缓存为主,所有数据全部放到分布式缓存中。以下为本发明实施例一种地图显示方法的流程步骤步骤1.根据XML文件配置支持的NIO框架,根据所述框架实现了 Socket和HTTP ; 接收来自客户端的网络请求,发送响应数据给客户端,并对传输的数据进行加解码。步骤2.接收来自网络传输过来的数据,并对所述数据进行协议解析、业务逻辑处 理、生成键值和访问缓存接口,在完成业务逻辑处理后将返回的数据进行协议组装。步骤3.根据缓存接口的访问对缓存分区文件划分的区域缓存进访问。以下为本发明实施例一种网络传输方法的流程步骤步骤1,根据XML文件配置支持的NIO框架。步骤2,接收用户请求,根据用户访问的端口区分是HTTP还是Socket。步骤3,根据不同的协议调用请求数据的相应的回调方法,同时将所述请求数据以 参数的方式传入所述相应的回调方法,调用数据响应方法,并发送所述数据响应方法传回 的响应数据。步骤4,使过滤器机制对所述请求数据与所述响应数据进行加解码。本发明实施例通过实现现有NIO框架,加快了网络传输速度并且解决了网络并发 问题,同时支持简单的扩展和配置就可以实现适配现有优秀的NIO框架,为系统提供了可 伸缩性。以下为本发明实施例地图协议方法的流程步骤
步骤1.将用户的请求数据以自定义协议的结构进行解析。其中所述自定义协议的格式为“数据包长度+协议号+协议相关属性+请求的数 据包内容”;步骤2.对解析后的自定义协议中的协议号进行协议划分,并派发到相应的地图 处理逻辑方法中,再根据具体的请求数据进行相应的逻辑处理。步骤3.生成缓存键值,获取缓存集合接口句柄,调用该句柄获取缓存接口方法, 同时将所述缓存键值传入,分析所述缓存键值是否在有效范围内,如在有效范围内则返回相应的缓存接口对象,通过所述缓存接口对象获取缓存数 据;如果所述缓存键值不在有效范围内或获取缓存数据失败,则访问第三方数据口来 获取数据。其中缓存键值在有效范围内指的是需要访问的数据在缓存分区模块内。步骤4.将返回的数据以自定义协议的结构进行组装并返回。本发明实施例通过实现自定义协议,精简了请求/响应的数据包,去除其它协议 所带来的多余属性,起到了给数据包减肥的做用,规范地图数据请求协议规格,更加快了请 求响应的速度。以下为本发明实施例分布式缓存方法的流程步骤步骤1.配置缓存分区文件,将缓存键值以范围的方式配置到分区文件中,例如 一组缓存键值范围对应到一个缓存服务器等。步骤2.接收缓存接口请求,根据缓存分区配置,访问相应的缓存服务器,获取数 据。步骤3.启动定时任务,将缓存中的数据备份到数据库中,然后将数据库定时备 份。步骤4.批量还原数据到指定的缓存服务器列表中。步骤5.访问第三方接口,生成缓存数据,根据缓存分区配置,将数据存放到相应 的缓存服务器中。本发明实施例通过调整数据存储结构,使用高速分布式缓存服务器组,将根据地 图数据的参数生成相应的键值,根据该键值划分缓存分区,分别值数据存放到不同的缓存 服务器中,以加快获取地图数据的速度,同时通过缓存定时备份与还原机制,实现了缓存数 据持久化,有效的解决了缓存数据丢失等问题,充分利用缓存的特性,从而加快了处理请求 的响应时间。调整后的数据存储结构是以缓存为主,所有数据全部放到分布式缓存中。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
一种地图显示系统,其特征在于,所述系统包括网络传输装置、地图协议装置、分布式缓存装置,所述地图协议装置分别于网络传输装置和分布式缓存装置相连。网络传输装置,用于NIO框架适配、数据接收与发送、数据加解码;地图协议装置,与所述网络传输装置相连接,用于处理协议的解析和组装、协议的派发、协议逻辑处理、键值生成;分布式缓存装置,与所述地图协议装置相连接,用于存放地图数据的缓存组、缓存分区、缓存备份、缓存还原。
2.如权利要求1所述的地图显示系统,其特征在于, 所述网络传输装置包括NIO框架适配模块,用于根据抽象类定义抽象方法,通过扩展该抽象类和配置相应属性 文件的方式,实现了 NIO框架的适配;网络协议支持模块,与所述NIO框架适配模块相连接,用于支持移动终端的网络协议; 数据收接模块,与所述网络协议支持模块相连接,用于接收网络协议支持模块,传送过 来的数据;数据发送模块,与所述网络协议支持模块相连接,用于将协议加解码传过来的数据发 送给网络协议支持模块;协议加解码模块,与所述数据发送模块和数据接收模块相连接,用于将数据接收模块 传输过来的数据进行解码后发送给协议解析模块,接收协议组装模块发送的数据并进行加 码后发送给数据发送模块。 所述地图协议装置包括协议解析模块,与所述协议加解码模块相和日志模块连接,用于解析网络传输装置中 的协议加解码模块发送的数据,根据预定格式进行协议解析,并将解析后的数据发送到业 务逻辑处理模块;其中所述预定格式为“数据包长度+协议号+协议相关属性+请求的数 据包内容”;协议组装模块,与所述协议加解码模块和日志模块相连接,用于组装来自业务逻辑处 理模块的响应数据,将所述响应数据与协议头进行组装,并将组装后的协议包发送到网络 传输装置的协议加解码模块;其中所述组装格式为“数据包长度+协议号+协议相关属性 +响应的数据包内容”;业务逻辑处理模块,与所述协议解析模块、协议组装模块相连接,用于将解析后的数据 派发到相应的协议逻辑处理功能上;键值组装模块,与所述业务逻辑处理模块相连接,用于当业务逻辑处理模块处理数据 需要获取非实时数据时,生成相应的键值,通过该键值作为访问缓存的参数;所述生成相应 的键值的格式分为两种一种是"键值类型+协议相关属性"、另一种是"键值类型+缩放 级别+坐标偏移量〃;缓存接口模块,与所述键值组装模块相连接,用与作为访问分布式缓存装置的引用句 柄,所述句柄的初始化根据读取缓存分区模块的配置而生成,所述缓存接口模块中包含一 组缓存引用句柄,每个引用句柄与缓存组模块中的区域缓存子模块相连接;日志模块,与所述的地图协议装置中所有模块相连接,用于记录请求日志,逻辑性处理日志和缓存访问日志,方便跟踪调试所述地图协议装置; 所述分布式缓存装置包括缓存分区模块,与所述缓存接口模块相连接,用于为缓存接口功能提供初始化参数,以 及根据缓存类型,缩放级别,坐标偏移量将缓存接口连接到不同的缓存组模块中的区域缓 存子模块;缓存模块组,与所述缓存分区模块相连接,用于提供统一的缓存访问接口,使用Telnet 协议作为基础协议,利用内存作为缓存,通过支持32/64位操作系统最大可利用内存不受 物理内存限制,此模块中还包括多个区域缓存子模块;定时备份模块,与所述缓存模块组相连接,此模块为自动触发,用于根据定时任务,定 时将缓存模块组中的多个区域缓存子模块的缓存数据持久化保存到数据库中;数据还原模块,与所述缓存模块组相连接,此模块为手动触发,用于将备份数据还原到 缓存模块组中的多个区域缓存子模块中。
3.—种网络传输装置,其特征在于,所述网络传输装置包括NIO框架适配模块,用于根据抽象类定义抽象方法,通过扩展该抽象类和配置相应属性 文件的方式,实现了 NIO框架的适配;网络协议支持模块,与所述NIO框架适配模块相连接,用于支持移动终端的网络协议; 数据收接模块,与所述网络协议支持模块相连接,用于接收网络协议支持模块,传送过 来的数据;数据发送模块,与所述网络协议支持模块相连接,用于将协议加解码传过来的数据发 送给网络协议支持模块;协议加解码模块,与所述数据发送模块和数据接收模块相连接,用于将数据接收模块 传输过来的数据进行解码后发送给协议解析模块,接收协议组装模块发送的数据并进行加 码后发送给数据发送模块。
4.一种地图协议装置,其特征在于,所述地图协议装置包括协议解析模块,用于将接受到的网络数据按照预定格式进行协议解析,并将解析后的 数据发送到业务逻辑处理模块;其中所述预定格式为“数据包长度+协议号+协议相关属 性+请求的数据包内容”;协议组装模块,用于组装来自业务逻辑处理模块的响应数据,将所述响应数据与协议 头进行组装,并发送组装后的协议包;其中所述组装格式为“数据包长度+协议号+协议 相关属性+响应的数据包内容”;业务逻辑处理模块,与协议组装模块相连接,用于将解析后的数据派发到相应的协议 逻辑处理功能上;键值组装模块,与所述业务逻辑处理模块相连接,用于当业务逻辑处理模块处理数据 需要获取非实时数据时,生成相应的键值,通过该键值作为访问缓存的参数;所述生成相应 的键值的格式分为两种一种是"键值类型+协议相关属性",另一种是"键值类型+缩放 级别+坐标偏移量〃;缓存接口模块,与所述键值组装模块相连接,用与作为访问分布式缓存的引用句柄,所 述句柄的初始化根据读取缓存分区模块的配置而生成,所述缓存接口模块中包含一组缓存 引用句柄,每个引用句柄与缓存组模块中的区域缓存子模块相连接;日志模块,与所述的地图协议装置中所有模块相连接,用于记录请求日志,逻辑性处理 日志和缓存访问日志,方便跟踪调试所述地图协议装置。
5.一种分布式缓存装置,其特征在于,所述分布式缓存装置包括缓存分区模块,用于为缓存接口功能提供初始化参数,以及根据缓存类型,缩放级别, 坐标偏移量将缓存接口连接到不同的缓存组模块中的区域缓存子模块;缓存模块组,与所述缓存分区模块相连接,用于提供统一的缓存访问接口,使用Telnet 协议作为基础协议,利用内存作为缓存,通过支持32/64位操作系统最大可利用内存不受 物理内存限制,此模块中包括多个区域缓存子模块;定时备份模块,与所述缓存模块组相连接,用于根据定时任务,定时将缓存模块组中的 多个区域缓存子模块的缓存数据持久化保存到数据库中;数据还原模块,与所述缓存模块组相连接,用于将备份数据还原到缓存模块组中的多 个区域缓存子模块中。
6.一种网络传输方法,其特征在于,所述方法包括 根据XML文件配置支持的NIO框架;接收用户请求,根据用户访问的端口区分是HTTP还是Socket ; 根据不同的协议调用请求数据的相应的回调方法,同时将所述请求数据以参数的方 式传入所述相应的回调方法,调用数据响应方法,并发送所述数据响应方法传回的响应数 据;使过滤器机制对所述请求数据与所述响应数据进行加解码。
7.—种地图协议方法,其特征在于,所述方法包括 将用户的请求数据以自定义协议的结构进行解析;对解析后的自定义协议中的协议号进行协议划分,并派发到相应的地图处理逻辑方法 中,再根据具体的请求数据进行相应的逻辑处理;生成缓存键值,获取缓存集合接口句柄,调用该句柄获取缓存接口方法,同时将所述缓 存键值传入,分析所述缓存键值是否在有效范围内,如在有效范围内则返回相应的缓存接口对象,通过所述缓存接口对象获取缓存数据; 如果所述缓存键值不在有效范围内或获取缓存数据失败,则访问第三方数据口来获取 数据;将返回的数据以自定义协议的结构进行组装并返回。
8.如图7所述的地图协议方法,其特征在于,所述自定义协议的格式为“数据包长度 +协议号+协议相关属性+请求的数据包内容”。
9.一种分布式缓存方法,其特征在于,所述方法包括配置缓存分区文件,将缓存键值以范围的方式配置到分区文件中; 接收缓存接口请求,根据缓存分区配置,访问相应的缓存服务器,获取数据; 启动定时任务,将缓存中的数据备份到数据库中,然后将数据库定时备份; 批量还原数据到指定的缓存服务器列表中;访问第三方接口,生成缓存数据,根据缓存分区配置,将数据存放到相应的缓存服务器中。
10.一种地图显示方法,其特征在于,所述方法包括根据XML文件配置支持的NIO框架,根据所述框架实现了 Socket和HTTP ;接收来自客户端的网络请求,发送响应数据给客户端,并对传输的数据进行加解码; 接收来自网络传输过来的数据,并对所述数据进行协议解析、业务逻辑处理、生成键值 和访问缓存接口,在完成业务逻辑处理后将返回的数据进行协议组装; 根据缓存接口的访问对缓存分区文件划分的区域缓存进访问。
全文摘要
本发明公开一种地图显示系统,所述系统包括网络传输装置,用于NIO框架适配、数据接收与发送、数据加解码;地图协议装置,与所述网络传输装置相连接,用于处理协议的解析和组装、协议的派发、协议逻辑处理、键值生成;分布式缓存装置,与所述地图协议装置相连接,用于存放地图数据的缓存组、缓存分区、缓存备份、缓存还原。本发明通过适配现有NIO框架,加快了网络传输速度并且解决了网络并发问题,为系统提供了可伸缩性;通过实现自定义协议,精简了请求/响应的数据包更加快了请求响应的速度;充分利用缓存的特性,数据存储结构是以缓存为主,所有数据全部放到分布式缓存中,从而加快了处理请求的响应时间。
文档编号G06F17/30GK101969456SQ20101028547
公开日2011年2月9日 申请日期2010年9月17日 优先权日2010年9月17日
发明者李春雨 申请人:深圳市融创天下科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1