CN115033656A - 基于地图缓存技术的数据处理方法、装置及电子装置 - Google Patents
基于地图缓存技术的数据处理方法、装置及电子装置 Download PDFInfo
- Publication number
- CN115033656A CN115033656A CN202210972192.7A CN202210972192A CN115033656A CN 115033656 A CN115033656 A CN 115033656A CN 202210972192 A CN202210972192 A CN 202210972192A CN 115033656 A CN115033656 A CN 115033656A
- Authority
- CN
- China
- Prior art keywords
- data
- request
- map
- request data
- stored
- 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.)
- Granted
Links
- 238000005516 engineering process Methods 0.000 title claims abstract description 20
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 84
- 238000009877 rendering Methods 0.000 claims abstract description 52
- 230000003068 static effect Effects 0.000 claims description 91
- 230000008569 process Effects 0.000 claims description 42
- 230000004044 response Effects 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 abstract description 20
- 238000004364 calculation method Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Remote Sensing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及数据缓存技术领域,具体而言,公开了一种基于地图缓存技术的数据处理方法、装置及电子装置,该基于地图缓存技术的数据处理方法包括:响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据;基于前端数据库中未存储有所述请求数据,采用预缓存的数据对被访问页面进行渲染;获取渲染得到的所述被访问页面的地图数据,并将所述地图数据保存于前端数据库中。本申请通过多线程对数据进行处理,减少数据传输过程的计算压力,从而减少数据传输耗时,提升被访问页面加载速度,使得用户拥有较好的页面访问体验感。
Description
技术领域
本申请涉及数据缓存技术领域,具体而言,涉及一种基于地图缓存技术的数据处理方法、装置及电子装置。
背景技术
随着人们生活节奏的加快,提高工作效率是人们提升自己必不可少的一个技能,其中,网页速度加载速度的快慢在很大程度上影响着人们日常工作效率。目前地图引擎是基于Java Script单线程传输数据,采用C/S结构技术在客户端缓存地图切片,但当地图引擎接收到的请求数据增多时,会出现数据缓存负载加大和数据反馈精度不高的问题,从而导致地图引擎传输数据过程中数据阻塞,通信时间变长,使得用户在使用浏览器时拥有较差的体验感。
有鉴于此特提出本申请。
发明内容
本申请要解决的技术问题在于克服现有技术的不足,提供一种基于地图缓存技术的数据处理方法、装置及电子装置。
根据本申请实施例的第一方面,提供一种基于地图缓存技术的数据处理方法,所述方法包括:响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据;基于前端数据库中未存储有所述请求数据,采用预缓存的数据对被访问页面进行渲染;获取渲染得到的所述被访问页面的地图数据,并将所述地图数据保存于前端数据库中。
可选的,所述采用预缓存的数据对被访问页面进行渲染,包括:响应于接收到目标位置的访问请求,启动线程Service Worker对请求数据进行预缓存;基于对所述请求数据的预缓存还未结束,且对被访问页面渲染进程的开始,终止预缓存;采用预缓存的请求数据渲染被访问页面;返回渲染后被访问页面的地图数据,并保存于前端数据库中。
可选的,地图引擎对所述请求数据的预缓存进程与渲染进程均独立运行。
可选的,所述判断前端数据库中是否存储有请求数据,包括:接收目标位置访问请求的请求数据;在前端数据库的静态资源文件缓存中,获取与地图标识相关的静态资源文件夹;响应于所述请求数据存储于所述静态资源文件夹中,则拦截所述请求数据。
可选的,判断所述请求数据存储于所述静态资源文件夹中的方法,包括:根据接收到的目标位置的访问请求,获取目标位置的请求数据;响应于所述请求数据可以与前端数据库中的地图数据相匹配,则确定所述请求数据存储于所述静态资源文件夹中,并返回地图数据。
可选的,所述请求数据存储于所述静态资源文件夹中,还包括:响应于所述请求数据未存储于所述静态资源文件夹中,则保存所述请求数据所在的静态资源文件至前端数据库中。
可选的,所述保存所述请求数据所在的静态资源文件至前端数据库中,包括:响应于拦截器未拦截到所述请求数据,启动线程Service Worker对所述请求数据进行处理;获取处理后的所述请求数据所在的静态资源文件夹,并保存至前端数据库中。
可选的,所述将所述地图数据保存于前端数据库中的方法,还包括:响应于前端数据库中不存在所述地图数据,向服务器发送目标位置的访问请求;根据获取的所述访问请求,判断请求数据的静态资源文件类型;启动Worker在服务器的数据库中对所述静态资源文件类型进行拦截,响应于所述静态资源文件类型存储于数据库中,则服务器将不会对数据进行操作;响应于所述静态资源文件类型未存储于数据库中,则服务器存储数据至数据库中。
根据本申请实施例的第二方面,提供一种基于地图缓存技术的数据处理装置,所述装置包括:判断模块,用于响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据;渲染模块,用于基于前端数据库中未存储有所述请求数据,采用预缓存的数据对被访问页面进行渲染;获取模块,用于获取渲染得到的所述被访问页面的地图数据,并将所述地图数据保存于前端数据库中。
可选的,所述渲染模块采用如下方式通过采用预缓存的数据对被访问页面进行渲染,包括:响应于接收到目标位置的访问请求,启动线程Service Worker对请求数据进行预缓存;基于对所述请求数据的预缓存还未结束,且对被访问页面渲染进程的开始,终止预缓存;采用预缓存的请求数据渲染被访问页面;返回渲染后被访问页面的地图数据,并保存于前端数据库中。
可选的,所述渲染模块中地图引擎对所述请求数据的预缓存进程与渲染进程均独立运行。
可选的,所述判断模块采用如下方式判断前端数据库中是否存储有请求数据,包括:接收目标位置访问请求的请求数据;在前端数据库的静态资源文件缓存中,获取与地图标识相关的静态资源文件夹;响应于所述请求数据存储于所述静态资源文件夹中,则拦截所述请求数据。
可选的,所述判断模块采用如下方式判断所述请求数据存储于所述静态资源文件夹中,所述方法包括:根据接收到的目标位置的访问请求,获取目标位置的请求数据;响应于所述请求数据可以与前端数据库中的地图数据相匹配,则确定所述请求数据存储于所述静态资源文件夹中,并返回地图数据。
可选的,所述判断模块对所述请求数据存储于所述静态资源文件夹中的判断,还包括:响应于所述请求数据未存储于所述静态资源文件夹中,则保存所述请求数据所在的静态资源文件至前端数据库中。
可选的,所述判断模块采用如下方式保存所述请求数据所在的静态资源文件至前端数据库中,包括:响应于拦截器未拦截到所述请求数据,启动Service Worker对所述请求数据进行处理;获取处理后的所述请求数据所在的静态资源文件夹,并保存至前端数据库中。
可选的,所述获取模块还包括保存模块,其中,所述保存模块还采用如下方式将所述地图数据保存于前端数据库中,所述方法包括:响应于前端数据库中不存在所述地图数据,向服务器发送目标位置的访问请求;根据获取的所述访问请求,判断请求数据的静态资源文件类型;启动Worker在服务器的数据库中对所述静态资源文件类型进行拦截,响应于所述静态资源文件类型存储于数据库中,则服务器将不会对数据进行操作;响应于所述静态资源文件类型未存储于数据库中,则服务器存储数据至数据库中。
根据本申请实施例的第三方面,提供一种电子装置,包括存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求第一方面提出的任一项所述基于地图缓存技术的数据处理方法。
采用上述技术方案后,本申请与现有技术相比具有以下有益效果:地图引擎响应于接收到目标位置的访问请求,会判断前端数据库中是否存储有请求数据;基于前端数据库中未存储有所述请求数据,将会采用预缓存的数据对被访问页面进行渲染,从而获得被访问页面;通过获取渲染得到的所述被访问页面的地图数据,并将所述地图数据保存于前端数据库中中的方法,实现在两个完全独立的线程中对接收到的请求数据进行处理,从而减少数据在传输过程中因数据阻塞而导致的数据传输耗时问题,减少数据通信时间,提高用户浏览器访问体验感。
下面结合附图对本申请的具体实施方式作进一步详细的描述。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的一种智能设备的交互方法的硬件环境示意图;
图2是根据本申请施实例的一种基于地图缓存技术的数据处理方法流程图;
图3是根据本申请实施例的一种数据拦截方法流程图;
图4是根据本申请实施例的一种渲染开始预缓存未结束的数据处理方法流程图;
图5是根据本申请实施例的一种数据预缓存方法流程图;
图6是根据本申请实施例的一种基于地图缓存技术的数据处理装置框图;
图7是根据本申请实施例的一种电子设备装置的框图。
需要说明的是,这些附图和文字描述并不旨在以任何方式限制本发明的构思范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例的一个方面,提供了一种智能家居设备的交互方法。该智能家居设备的交互方法广泛应用于智慧家庭(Smart Home)、智能家居、智能家用设备生态、智慧住宅(Intelligence House)生态等全屋智能数字化控制应用场景。可选地,在本实施例中,上述智能家居设备的交互方法可以应用于如图1所示的由终端设备102和服务器104所构成的硬件环境中。如图1所示,服务器104通过网络与终端设备102进行连接,可用于为终端或终端上安装的客户端提供服务(如应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器104提供数据存储服务,可在服务器上或独立于服务器配置云计算服务,用于为服务器104提供数据运算服务。
上述网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:WIFI(Wireless Fidelity,无线保真),蓝牙。终端设备102可以并不限定于为PC、手机、平板电脑等。
根据本申请实施例的另一个方面,通常我们在使用地图引擎技术访问地图页面时,往往是在客户端地图首页上基于确定的目标位置来向服务器发送访问请求,根据服务端接收到的访问请求,服务器将会对请求数据进行处理,返回被访问页面的地图数据至客户端,并在地图首页上展示被访问页面。服务器接收到的访问请求可以使一个也可以是多个,若服务器接收到一个访问请求时,可以实现在数据传输不发生堵塞的情况下返回地图数据,但基于服务器接收到的访问请求可以是首次请求,也可以是非首次请求,若地图引擎接收到的访问请求属于首次访问请求时,则该访问请求的请求数据将会发送至服务器,通过服务器返回被访问页面的地图数据;若地图引擎接收到的访问请求属于非首次访问请求时,则该访问请求的请求数据将会发送至服务器的数据库中,通过判断服务器的数据库中是否存在与请求数据相匹配的地图数据来确定返回客户端的被访问页面数据,响应于服务器的数据库中存在与请求数据相匹配的地图数据,则返回被访问页面的地图数据;响应于服务器的数据库中不存在与请求数据相匹配的地图数据,则基于错误状态码数据,按照接收到的访问请求属于首次访问请求的步骤返回被访问页面的地图数据。当服务器接收到多个访问请求时,基于服务器依靠Java Script单线程传输数据,因此当数据传输数量增多时,由于服务器计算量加大,会出现数据缓存负载加大和数据传输堵塞的情况,因此会导致数据传输耗时,影响用户的浏览器访问体验感。
当前,最新HTML5文件系统API技术能够实现在客户端存储大批量文件,将海量地图切片缓存到用户的电脑硬盘或者移动设备中,在需要访问地图时从客户端调出使用。因此,当用户将地图瓦片缓存到客户端时,可以减少服务器对接收到的非首次访问请求的请求数据的处理过程。
基于此,本申请针对现有技术存在的问题提出了一个新的解决方案,在服务器接收到访问请求对请求数据进行主线程渲染前,增加一个副线程对请求数据进行预缓存,其中本申请中基于启动Service Worker对请求数据进行预缓存,基于启动Worker对请求数据进行渲染,并将返回的地图数据存储于客户端的前端数据库中,减少数据传输过程中的数据缓存负载大的问题,从而减少数据传输耗时,提升用户的浏览器访问体验感。
关于本申请的具体实施例请见以下详细介绍。
图2是根据本申请施实例的一种基于地图缓存技术的数据处理方法流程图,如图2所示,包括以下步骤:
在步骤S201中,响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据。
其中,目标位置为用户输入的地理位置,例如目标位置可以为住宅位置、公司位置、景区位置等。目标位置的访问请求可以理解为用户下发的请求指令,也就是说,在监测到用户下发请求指令的情况下,确定接收用户访问目标位置的请求。用户可以通过在搜索框内输入目标位置的方式下发搜索指令,用户还可以通过语音下发搜索指令,用户也可以通过点击客户端首页的地图位置下发指令。
在接收到访问请求的情况下,判断前端数据库中是否存储有与访问请求对应的请求数据。前端数据库是用于存储用户在设定时间内访问过的历史目标位置,也就是说,前端数据库中存储的是已经完成渲染的地图数据。其中,访问请求包括首次请求和非首次请求。若在前端数据库中存储有与该请求数据对应的地图数据,则表明该访问请求为非首次请求;若在前端数据库中未存储有与该请求数据对应的地图数据,则表明该访问请求为首次请求。
其中,判断前端数据库中是否存储有请求数据的方法包括:通过启动线程Worker在前端数据库中拦截请求数据,或者通过启动服务线程Service Worker在前端数据库中拦截请求数据。
在步骤S202中,基于前端数据库中未存储有请求数据,采用预缓存的数据对被访问页面进行渲染。
其中,前端数据库中未存储有请求数据表明搜索引擎接收到的访问请求属于首次请求,因此需要基于请求数据渲染被访问页面,基于搜索引擎对被访问页面的渲染需要将接收到的请求数据传输至地图引擎的主线程,因此会存在一定的等待时间。因此本申请将基于预缓存的请求数据渲染被访问页面。
预缓存是提前将请求数据暂时缓存于前端数据库中,在接收到访问请求的情况下,地图引擎会启动Service Worker将请求数据提前保存至前端数据库中,从而使得地图引擎可以基于预缓存保存的请求数据渲染被访问页面。
渲染是获取被访问页面的过程,即将被访问页面展示在客户端首页,返回被访问页面的地图数据的过程。
其中,搜索引擎对该请求数据的预缓存进程和渲染进程的关系,包括三种情况:第一种情况为:若当搜索引擎接收到目标位置的访问请求后,立刻触发对该请求数据所在网页的渲染,此时预缓存进程还未开始,则取消搜索引擎对该请求数据的预缓存,基于接收到的请求数据渲染被访问页面;第二种情况为:若当搜索引擎接收到目标位置的访问请求后,先触发对该请求数据的预缓存,在该预缓存进程还未结束时,搜索引擎对该请求数据的渲染开始,则停止搜索引擎对该请求数据的预缓存,基于预缓存的请求数据渲染被访问页面;第三种情况为:若当搜索引擎接收到目标位置的访问请求后,先触发对该请求数据的预缓存,在该预缓存进程已经结束后,搜索引擎对该请求数据的渲染还未开始,则取消搜索引擎对该请求数据的渲染,基于对该请求数据预缓存过程在前端数据库中保存的请求数据,获取与该请求数据相应的地图数据,并返回至客户端,在客户端首页展示地图页面。
本申请中,地图引擎对请求数据的预缓存进程和渲染进程均独立运行,其中渲染进程是主线程,预缓存进程是独立于主线程的一条副线程。当地图引擎接收到多个访问请求,需要对多个访问请求的请求数据进行传输时,将会通过副线程即预缓存提前保存数据从而减少主线程数据传输的压力,最终实现通过多线程运行来对接收到的请求数据进行处理,从而解决数据传输过程的堵塞和耗时问题,减少通信时间,提升用户体验感。
在步骤S203中,获取渲染得到的被访问页面的地图数据,并将地图数据保存于前端数据库中。
地图数据是被访问页面的身份信息,例如:数据名称、数据类型、数据标识等。被访问页面的地图数据可以理解为地图引擎对被访问页面进行区分的专属身份信息,其中,地图数据存储于客户端的前段数据库中。
基于搜索引擎接收到的访问请求属于首次请求,因此,当接收到请求数据时,会同时触发对请求数据的预缓存和渲染进程,响应于对请求数据渲染进程的开始,且对请求数据的预缓存进程还未结束,其中,地图引擎对被访问页面的渲染是基于预缓存的前端数据库中缓存的请求数据进行的。实现地图引擎通过多线程对数据处理,从而减少了数据传输过程由于数据传输数量大导致的阻塞问题,从而缩短了数据通信时间。
基于获取的被访问页面,获取该被访问页面的地图数据,并且将该被访问页面的地图数据保存至前端数据库中,可以实现当地图引擎接收到的访问请求属于非首次请求时,在前端数据库中通过索引的方式直接返回被访问页面至客户端首页,而无需通过对请求数据进行渲染得到,因而可以减少通信时间,提高浏览器对于访问请求的响应速度,提升用户体验感。
搜索引擎通过对接收到的访问请求进行拦截、预缓存以及渲染进程,最终将被访问页面展示在客户端首页的方法,可以减少服务器数据传输耗时,提高浏览器页面加载速度,从而提升用户体验感呢。其中,基于线程Worker在前端数据库中对请求数据进行拦截,从而将索引到的地图数据返回给客户端,可以减少请求数据二次通信的时长;基于预缓存的数据对被访问页面进行渲染,可以减少数据传输阻塞,从而缩短数据通信时间;将地图数据存储于前端数据库内,可以实现当接用户发送非首次访问请求时,直接从前端数据库中检索获取相应地图数据,返回给客户端,从而缩短数据通信时间。
图3是根据本申请实施例的一种数据拦截方法流程图,如图3所示,包括以下步骤:
在步骤S301中,接收目标位置访问请求的请求数据。
在步骤S302中,在前端数据库的静态资源文件缓存中,获取与地图标识相关的静态资源文件夹。
其中,静态资源文件缓存是预缓存过程中存储于前端数据库中的数据文件,包括有关请求数据的所有数据文件,例如:地图标识静态资源文件夹、音频标识静态资源文件夹和图片标识静态资源文件夹等。其中,静态资源文件中保存着每次接收的访问请求的数据,包括地图数据和请求数据。
前端数据库中存储有地图引擎数据缓存,其中,该地图引擎数据缓存均有相对应的静态资源文件夹,基于本申请应用于地图缓存技术领域,因此通过在静态资源文件缓存中获取与地图标识相关的静态资源文件夹,可以减少对于请求数据的计算压力。
在步骤S303中,响应于请求数据存储于静态资源文件夹中,则拦截请求数据。
其中,拦截是为了确定在前端数据库中存在与请求数据相关的静态资源文件。
其中,判断请求数据存储于静态资源文件夹中的方法,包括:根据接收到的目标位置的访问请求,获取目标位置的请求数据;响应于请求数据可以与前端数据库中的地图数据相匹配,则确定请求数据存储于静态资源文件夹中,并返回地图数据。
通常前端数据库内存储的每个地图数据均对应有一个静态资源文件夹,因此可以通过判断该前端数据库中是否存储有与请求数据相对应的地图数据的静态资源文件夹,从而判断请求数据是否存储于静态资源文件夹中。判断方式可以通过搜索引擎的拦截器拦截该地图数据,若拦截到该地图数据,则说明请求数据存储于静态资源文件夹中;若未拦截到该地图数据,则说明请求数据未存储于静态资源文件夹中。
常见的拦截器包括:fetch-Blob、fetch-Json、fetch-ArrayBuffer等。其中,Fetch技术可通过链式回调的方式实现在不刷新页面获取后端数据的基础上,在前端更新页面,Blob、Json、Arraybuffer均可视为地图引擎接收的访问请求的文件类型,地图引擎基于接收到的访问请求,将会在前端数据库中对该访问请求对应的文件类型进行拦截,并返回一个对该访问请求的解决方案,若确定该请求数据对应的静态资源文件夹存储于前端数据库中,则地图引擎将会返回该地图数据至客户端;若经拦截确定该请求数据对应的静态资源文件夹未存储与前端数据库中,则将会在前端数据库中保存该地图数据。
在步骤S304中,响应于请求数据未存储于静态资源文件夹中,则保存请求数据所在的静态资源文件至前端数据库中。
若请求数据与前端数据库中的地图数据不能匹配,则确定请求数据未存储于静态资源文件夹中,则将请求数据所在的静态资源文件缓存到前端数据库。
由于请求数据未存储于静态资源文件夹中,则确定该访问请求为首次请求,因此,前端数据库中不存在与该请求数据相匹配的地图数据,因此需要将地图数据所在的静态资源文件缓存到前端数据库,以便当地图引擎接收到的访问请求属于非首次请求时,可以在前端数据库中通过拦截获取地图数据,并返回给客户端。
地图引擎启动线程Worker对目标位置的请求数据的拦截,可以简化服务端调用请求数据的过程,并减少数据请求过程中的计算压力,从而缩短数据通信时长,提高浏览器加载速度,提升用户的使用体验感。
基于地图引擎将被访问页面展示在客户端首页,若访问请求属于首次请求,则地图引擎还会将接收到的请求数据传输至服务器,判断服务器的数据库中是否存储有该请求数据的地址信息。
其中判断服务器的数据库中是否存储有被访问页面的地址信息的方法,包括:响应于前端数据库中不存在地图数据,向服务器发送目标位置的访问请求;根据获取的访问请求,判断请求数据的静态资源文件类型;启动Worker在服务器的数据库中对静态资源文件类型进行拦截,响应于静态资源文件类型存储于数据库中,则服务器将不会对数据进行操作;响应于静态资源文件类型未存储于数据库中,则存储数据至数据库中。
由于地图引擎接收到的访问请求属于首次请求,因此服务端的数据库中并未存储与该请求有关的信息,其中该信息包括:数据信息和地址信息。因此,服务器需要在数据库中存储与该请求数据对应的静态资源文件类型、地址信息,以便在接收到非首次请求时,可以减少数据通信时间,展示被访问页面。
通常地图数据存储于服务器的数据库中,数据库中存储有地图数据的地址信息,数据库中存储的地址信息可以长久保存,若前端数据库中缓存的地图数据由于在一段时间内未被访问而被删除,可以通过在服务器的数据库中存储的地址信息中获取该地图数据的地址信息。从而缩短数据通信时长。
图4是根据本申请实施例的一种渲染开始预缓存未结束的数据处理方法流程图,如图4所示,包括以下步骤:
在步骤S401中,响应于接收到目标位置的访问请求,启动线程Service Worker对请求数据进行预缓存。
在步骤S402中,基于对请求数据的预缓存还未结束,且对被访问页面渲染进程的开始,终止预缓存。
在步骤S403中,采用预缓存的请求数据渲染被访问页面。
在步骤S404中,返回渲染后被访问页面的的地图数据,并保存于前端数据库中。
基于预缓存缓存的请求数据渲染被访问页面,可以减少数据传输和数据通信的时间,从而加快浏览器渲染页面的进程,提升用户体验感。
图5是根据本申请实施例的一种数据预缓存方法流程图,如图5所示,包括以下步骤:
在步骤S501中,响应于拦截器未拦截到所述请求数据,启动线程Service Worker对所述请求数据进行处理;
在步骤S502中,获取处理后的所述请求数据所在的静态资源文件夹,并保存至前端数据库中。
响应于地图引擎接收到的访问请求,通过启动服务线程Service Worker实现对该请求数据的预缓存,通过预缓存的方式对该请求数据进行提前保存,存储至前端数据库中,可以减少客户端在第一次向服务端发送请求时获取该目标位置页面的通信时间,实现比地图引擎对请求数据进行渲染,更快的获取被访问页面,避免第一次数据传输过程中产生的网络传输耗时的问题,从而提升用户对于页面访问的体验感。
图6是根据本申请实施例的一种基于地图缓存技术的数据处理装置框图,如图6所示,该装置600可以包括判断模块601,渲染模块602,获取模块603。其中,
判断模块601,用于响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据;
渲染模块602,用于基于前端数据库中未存储有请求数据,采用预缓存的数据对被访问页面进行渲染;
获取模块603,用于获取渲染得到的被访问页面的地图数据,并将地图数据保存于前端数据库中。
可选的,所述渲染模块602采用如下方式通过采用预缓存的数据对被访问页面进行渲染,包括:响应于接收到目标位置的访问请求,启动线程Service Worker对请求数据进行预缓存;基于对所述请求数据的预缓存还未结束,且对被访问页面渲染进程的开始,终止预缓存;采用预缓存的请求数据渲染被访问页面;返回渲染后被访问页面的地图数据,并保存于前端数据库中。
可选的,所述渲染模块602中地图引擎对所述请求数据的预缓存进程与渲染进程均独立运行。
可选的,所述判断模块601采用如下方式判断前端数据库中是否存储有请求数据,包括:接收目标位置访问请求的请求数据;在前端数据库的静态资源文件缓存中,获取与地图标识相关的静态资源文件夹;响应于所述请求数据存储于所述静态资源文件夹中,则拦截所述请求数据。
可选的,所述判断模块601采用如下方式判断所述请求数据存储于所述静态资源文件夹中,所述方法包括:根据接收到的目标位置的访问请求,获取目标位置的请求数据;响应于所述请求数据可以与前端数据库中的地图数据相匹配,则确定所述请求数据存储于所述静态资源文件夹中,并返回地图数据。
可选的,所述判断模块601对所述请求数据存储于所述静态资源文件夹中的判断,还包括:响应于所述请求数据未存储于所述静态资源文件夹中,则保存所述请求数据所在的静态资源文件至前端数据库中。
可选的,所述判断模块601采用如下方式将所述请求数据所在的静态资源文件缓存到前端数据库中的方法,包括:响应于拦截器未拦截到所述请求数据,启动线程ServiceWorker对所述请求数据进行预缓存;保存所述请求数据至前端数据库中。
可选的,所述获取模块603还包括保存模块,其中,所述保存模块还采用如下方式将所述地图数据保存于前端数据库中,所述方法包括:响应于前端数据库中不存在所述地图数据,向服务器发送目标位置的访问请求;根据获取的所述访问请求,判断请求数据的静态资源文件类型;启动Worker在服务器的数据库中对所述静态资源文件类型进行拦截,响应于所述静态资源文件类型存储于数据库中,则服务器将不会对数据进行操作;响应于所述静态资源文件类型未存储于数据库中,则服务器存储数据至数据库中。
图7是根据本申请实施例的一种电子设备装置的框图。例如,装置700可以被提供为一服务器。参照图7,装置700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述基于地图缓存技术的数据处理方法。
装置700还可以包括一个电源组件726被配置为执行装置700的电源管理,一个有线或无线网络接口750被配置为将装置700连接到网络,和一个输入/输出接口758。装置700可以操作基于存储在存储器732的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本领域技术人员在考虑说明书及实践本申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种基于地图缓存技术的数据处理方法,其特征在于,包括:
响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据;
基于前端数据库中未存储有所述请求数据,采用预缓存的数据对被访问页面进行渲染;
获取渲染得到的所述被访问页面的地图数据,并将所述地图数据保存于前端数据库中。
2.根据权利要求1所述的方法,其特征在于,所述采用预缓存的数据对被访问页面进行渲染,包括:
响应于接收到目标位置的访问请求,启动线程Service Worker对请求数据进行预缓存;
基于对所述请求数据的预缓存还未结束,且对被访问页面渲染进程的开始,终止预缓存;
采用预缓存的请求数据渲染被访问页面;
返回渲染后被访问页面的地图数据,并保存于前端数据库中。
3.根据权利要求2所述的方法,其特征在于,地图引擎对所述请求数据的预缓存进程与渲染进程均独立运行。
4.根据权利要求1所述的方法,其特征在于,所述判断前端数据库中是否存储有请求数据,包括:
接收目标位置访问请求的请求数据;
在前端数据库的静态资源文件缓存中,获取与地图标识相关的静态资源文件夹;
响应于所述请求数据存储于所述静态资源文件夹中,则拦截所述请求数据。
5.根据权利要求4所述的方法,其特征在于,判断所述请求数据存储于所述静态资源文件夹中的方法,包括:
根据接收到的目标位置的访问请求,获取目标位置的请求数据;
响应于所述请求数据可以与前端数据库中的地图数据相匹配,则确定所述请求数据存储于所述静态资源文件夹中,并返回地图数据。
6.根据权利要求4所述的方法,其特征在于,所述请求数据存储于所述静态资源文件夹中,还包括:
响应于所述请求数据未存储于所述静态资源文件夹中,则保存所述请求数据所在的静态资源文件至前端数据库中。
7.根据权利要求6所述的方法,其特征在于,所述保存所述请求数据所在的静态资源文件至前端数据库中,包括:
响应于拦截器未拦截到所述请求数据,启动线程Service Worker对所述请求数据进行处理;
获取处理后的所述请求数据所在的静态资源文件夹,并保存至前端数据库中。
8.根据权利要求1所述的方法,其特征在于,将所述地图数据保存于前端数据库中的方法,还包括:
响应于前端数据库中不存在所述地图数据,向服务器发送目标位置的访问请求;
根据获取的所述访问请求,判断请求数据的静态资源文件类型;
启动Worker在服务器的数据库中对所述静态资源文件类型进行拦截,响应于所述静态资源文件类型存储于数据库中,则服务器将不会对数据进行操作;
响应于所述静态资源文件类型未存储于数据库中,则服务器存储数据至数据库中。
9.一种基于地图缓存技术的数据处理装置,其特征在于,包括:
判断模块,用于响应于接收到目标位置的访问请求,判断前端数据库中是否存储有请求数据;
渲染模块,用于基于前端数据库中未存储有所述请求数据,采用预缓存的数据对被访问页面进行渲染;
获取模块,用于获取渲染得到的所述被访问页面的地图数据,并将所述地图数据保存于前端数据库中。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210972192.7A CN115033656B (zh) | 2022-08-15 | 2022-08-15 | 基于地图缓存技术的数据处理方法、装置及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210972192.7A CN115033656B (zh) | 2022-08-15 | 2022-08-15 | 基于地图缓存技术的数据处理方法、装置及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115033656A true CN115033656A (zh) | 2022-09-09 |
CN115033656B CN115033656B (zh) | 2023-08-08 |
Family
ID=83131206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210972192.7A Active CN115033656B (zh) | 2022-08-15 | 2022-08-15 | 基于地图缓存技术的数据处理方法、装置及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115033656B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117390057A (zh) * | 2023-12-11 | 2024-01-12 | 成都智达万应科技有限公司 | 一种地图数据查询方法及系统 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6615235B1 (en) * | 1999-07-22 | 2003-09-02 | International Business Machines Corporation | Method and apparatus for cache coordination for multiple address spaces |
US20090138794A1 (en) * | 2007-11-27 | 2009-05-28 | Joseph Becker | System and method for securing web applications |
US20190095196A1 (en) * | 2017-09-27 | 2019-03-28 | Whatsapp Inc. | Techniques for web application updates |
CN109710716A (zh) * | 2018-12-24 | 2019-05-03 | 成都四方伟业软件股份有限公司 | 地图流畅渲染方法、终端设备及计算机可读存储介质 |
CN110889062A (zh) * | 2019-11-15 | 2020-03-17 | 北京幻想纵横网络技术有限公司 | 页面加载方法及装置、终端和计算机可读存储介质 |
CN111078817A (zh) * | 2019-12-26 | 2020-04-28 | 中科星图股份有限公司 | 一种基于Redis和PostgreSQL的瓦片地图服务集群系统和方法 |
CN111708600A (zh) * | 2020-08-20 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 页面显示方法、装置、设备及计算机可读存储介质 |
CN112231125A (zh) * | 2020-12-16 | 2021-01-15 | 智道网联科技(北京)有限公司 | 智能车载网联终端的地图显示方法及装置 |
CN112905920A (zh) * | 2019-12-04 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 一种页面显示的方法和装置 |
CN113723061A (zh) * | 2021-08-30 | 2021-11-30 | 上海幻电信息科技有限公司 | 基于多人协作框架的数据处理方法及装置 |
CN113722647A (zh) * | 2021-09-08 | 2021-11-30 | 北京沃东天骏信息技术有限公司 | 显示信息的方法和装置 |
-
2022
- 2022-08-15 CN CN202210972192.7A patent/CN115033656B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6615235B1 (en) * | 1999-07-22 | 2003-09-02 | International Business Machines Corporation | Method and apparatus for cache coordination for multiple address spaces |
US20090138794A1 (en) * | 2007-11-27 | 2009-05-28 | Joseph Becker | System and method for securing web applications |
US20190095196A1 (en) * | 2017-09-27 | 2019-03-28 | Whatsapp Inc. | Techniques for web application updates |
CN109710716A (zh) * | 2018-12-24 | 2019-05-03 | 成都四方伟业软件股份有限公司 | 地图流畅渲染方法、终端设备及计算机可读存储介质 |
CN110889062A (zh) * | 2019-11-15 | 2020-03-17 | 北京幻想纵横网络技术有限公司 | 页面加载方法及装置、终端和计算机可读存储介质 |
CN112905920A (zh) * | 2019-12-04 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 一种页面显示的方法和装置 |
CN111078817A (zh) * | 2019-12-26 | 2020-04-28 | 中科星图股份有限公司 | 一种基于Redis和PostgreSQL的瓦片地图服务集群系统和方法 |
CN111708600A (zh) * | 2020-08-20 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 页面显示方法、装置、设备及计算机可读存储介质 |
CN112231125A (zh) * | 2020-12-16 | 2021-01-15 | 智道网联科技(北京)有限公司 | 智能车载网联终端的地图显示方法及装置 |
CN113723061A (zh) * | 2021-08-30 | 2021-11-30 | 上海幻电信息科技有限公司 | 基于多人协作框架的数据处理方法及装置 |
CN113722647A (zh) * | 2021-09-08 | 2021-11-30 | 北京沃东天骏信息技术有限公司 | 显示信息的方法和装置 |
Non-Patent Citations (1)
Title |
---|
金平;张海东;齐越;沈旭昆;: "基于远程渲染的三维模型发布系统", 北京航空航天大学学报, no. 03 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117390057A (zh) * | 2023-12-11 | 2024-01-12 | 成都智达万应科技有限公司 | 一种地图数据查询方法及系统 |
CN117390057B (zh) * | 2023-12-11 | 2024-03-19 | 成都智达万应科技有限公司 | 一种地图数据查询方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115033656B (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11775435B2 (en) | Invalidation and refresh of multi-tier distributed caches | |
US10747670B2 (en) | Reducing latency by caching derived data at an edge server | |
US10489476B2 (en) | Methods and devices for preloading webpages | |
US9075663B2 (en) | Cloud-based web workers and storages | |
US9967361B2 (en) | Physical location influenced caching | |
CN106371932B (zh) | 一种基于zookeeper的信息配置方法及装置 | |
CN113420051B (zh) | 一种数据查询方法、装置、电子设备和存储介质 | |
CN113010818A (zh) | 访问限流方法、装置、电子设备及存储介质 | |
CN109032805A (zh) | 一种弹性扩缩容方法、装置、服务器及存储介质 | |
CN109302437B (zh) | 一种重定向网站的方法和装置 | |
CN110190997A (zh) | 配置信息获取方法、装置、设备及计算机可读存储介质 | |
CN110781149A (zh) | 管理直播间信息的方法、装置、设备及存储介质 | |
US11832349B2 (en) | Nomination of a primary cell phone from a pool of cell phones | |
CN115033656B (zh) | 基于地图缓存技术的数据处理方法、装置及电子装置 | |
US20160080519A1 (en) | Local caching and resolution of service calls | |
CN113961832A (zh) | 页面渲染的方法、装置、设备、存储介质及程序产品 | |
CN115054912A (zh) | 云游戏资源调度方法、客户端、设备及存储介质 | |
CN111224811B (zh) | 一种snmp请求监听系统、方法、装置及计算机可读存储介质 | |
CN113840313B (zh) | 移动终端的网络模式控制方法、装置和计算机设备 | |
CN104346228A (zh) | 共享应用程序的方法及终端 | |
CN115002095B (zh) | 资源获取方法、装置、终端及存储介质 | |
KR101538522B1 (ko) | 위젯정보를 공유하는 이동통신단말기 및 그 방법 | |
CN113742076A (zh) | 一种获取数据资源的方法、装置、设备、服务器及介质 | |
CN117201311A (zh) | 信息的优化方法、装置及电子设备 | |
GB2497814A (en) | Cache selection by clients in a content-on-demand network |
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 |