CN113596177A - 智能家居设备的ip地址的解析方法和装置 - Google Patents
智能家居设备的ip地址的解析方法和装置 Download PDFInfo
- Publication number
- CN113596177A CN113596177A CN202110928342.XA CN202110928342A CN113596177A CN 113596177 A CN113596177 A CN 113596177A CN 202110928342 A CN202110928342 A CN 202110928342A CN 113596177 A CN113596177 A CN 113596177A
- Authority
- CN
- China
- Prior art keywords
- address
- cache
- parameter
- external server
- value
- 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
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/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书实施例提供了一种智能家居设备的IP地址的解析方法和装置。该方法包括:接收智能家居设备的调用请求;从该调用请求中获取IP地址;从本地缓存中查询是否存在该IP地址的解析结果;如果存在,则该IP地址的解析成功;如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功;如果未接收到,则调用第三方API进行该IP地址的解析;获取第三方API返回的IP地址的解析结果,并以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。能够提高IP地址的解析效率。
Description
技术领域
本说明书一个或多个实施例涉及网络通信技术,尤其涉及智能家居设备的IP地址的解析方法和装置。
背景技术
随着智能家居的发展,智能家居设备的使用也越来越普遍,智能家居设备的智能化进程也进一步加快。每台智能家居设备需要与云端的服务器进行大量的交互,大数据量的访问对云端服务器的压力也是越来越大。有时候会造成接口访问卡死,响应速度慢,甚至服务宕机等。这就需要云端服务器在处理大数据量的设备访问时,注重访问接口的性能优化,访问效率提高。因此,云端服务器在接收到访问请求时,需要一种更为高效的IP地址的解析方法。
发明内容
本说明书一个或多个实施例描述了智能家居设备的IP地址的解析方法和装置,能够更为高效地解析IP地址。
根据第一方面,提供了一种智能家居设备的IP地址的解析方法,应用于云端服务器,包括:
接收智能家居设备的调用请求;
从该调用请求中获取IP地址;
从本地缓存中查询是否存在该IP地址的解析结果;
如果存在,则该IP地址的解析成功;
如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;
如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功;
如果未接收到,则调用第三方API进行该IP地址的解析,并在获取第三方API返回的IP地址的解析结果后,以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。
其中,在所述接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果之后,进一步包括:以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对存储到所述本地缓存中。
其中,所述本地缓存包括:Ehcache;和/或,所述外部服务器的缓存包括:Redis。
其中,当所述本地缓存包括Ehcache时,
所述从本地缓存中查询是否存在该IP地址的解析结果包括:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
当所述本地缓存包括Ehcache时,预先设置第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;。
该方法进一步包括:在将一个IP地址的解析结果存入所述本地缓存Ehcache之后,判断该IP地址的解析结果所对应的第一参数的值是否为真,如果否,则计算根据该IP地址的解析结果被存入Ehcache的参数设置以及计算结果,确定是否删除该IP地址的解析结果;其中,a、b为介于0与1之间的常数,且a、b之和为1,x表征所述第二参数,y表征所述第三参数,S4表示预设的x的取值的上限值,x的取值范围属于T;S2表示预设的y的取值的上限值,y的取值范围属于Y,i和j为变量。
其中,所述value为所述IP地址对应的城市编码;该方法进一步包括:根据所述IP地址对应的城市编码,定位所述智能家居设备;和/或,
所述调用第三方API进行该IP地址的解析,包括:通过线程池调用第三方API进行该IP地址的解析。
根据第二方面,提供了一种智能家居设备的IP地址的解析装置,包括:
IP地址获取单元,被配置为接收智能家居设备的调用请求;从该调用请求中获取IP地址;
缓存查询单元,被配置为从本地缓存中查询是否存在该IP地址的解析结果;如果存在,则该IP地址的解析成功;如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功,如果未接收到外部服务器发来的该IP地址的解析结果,则触发第三方查询单元;
第三方查询单元,被配置为在受到触发后,调用第三方API进行该IP地址的解析,并在获取第三方API返回的IP地址的解析结果后,以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。
其中,当所述本地缓存包括Ehcache时,
所述缓存查询单元被配置为执行:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
当所述本地缓存包括Ehcache时,预先设置有第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
所述缓存查询单元被配置为执行:在将一个IP地址的解析结果存入所述本地缓存Ehcache之后,判断该IP地址的解析结果所对应的第一参数的值是否为真,如果否,则计算根据该IP地址的解析结果被存入Ehcache的参数设置以及计算结果,确定是否删除该IP地址的解析结果;其中,a、b为介于0与1之间的常数,且a、b之和为1,x表征所述第二参数,y表征所述第三参数,S4表示预设的x的取值的上限值,x的取值范围属于T;S2表示预设的y的取值的上限值,y的取值范围属于Y,i和j为变量。
根据第三方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现本说明书任一实施例所述的方法。
本说明书实施例提供的智能家居设备的IP地址的解析方法和装置,在接收到一个调用请求之后,不是直接到数据库中去查询对该调用请求中的IP地址的解析结果,也不是直接调用第三方API来获得IP地址的解析结果,而是,首先在本地缓存中查询,如果未查找到,才到外部服务器的缓存中查询,如果仍然未查找到,才会调用第三方API,这样,首先通过两级缓存分别查询的方式,能够将之前已经有的IP地址的解析结果从缓存中快速获取到,这样,则大大提高了获得IP地址的解析结果的获取效率,从而为后续业务诸如智能家居设备的定位提供了更为快速的参数。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书一个实施例所应用的系统架构的示意图。
图2是本说明书一个实施例中智能家居设备的IP地址的解析方法的流程图。
图3是本说明书一个实施例中智能家居设备的IP地址的解析装置的结构示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
为了方便对本说明书的理解,首先对本说明书所应用的系统架构进行描述。如图1中所示,该系统架构主要包括智能家居设备以及云端服务器。其中,智能家居设备可以是智能冰箱、智能洗衣机、智能电视及智能窗帘等智能设备,云端服务器负责处理智能家居设备的各种信息。智能家居设备以及云端服务器之间通过网络交互。其中,网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等。
图2示出了本说明书一个实施例中智能家居设备的IP地址的解析方法的流程图。该方法的执行主体为智能家居设备的IP地址的解析装置。该装置可以位于图1中所示的云端服务器中。可以理解,该方法也可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。参见图2,该方法包括:
步骤201:接收智能家居设备的调用请求;
步骤203:从该调用请求中获取IP地址;
步骤205:判断在本地缓存中查询是否存在该IP地址的解析结果;如果存在,则该IP地址的解析成功,结束当前流程;如果不存在,则执行步骤207;
步骤207:以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;
步骤209:判断是否接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,如果是,则该IP地址的解析成功,结束当前流程;如果否,执行步骤211;
步骤211:调用第三方API进行该IP地址的解析。
步骤213:获取第三方API返回的IP地址的解析结果,以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。
根据上述图2所示流程可以看出,在接收到一个调用请求之后,不是直接到数据库中去查询对该调用请求中的IP地址的解析结果,也不是直接调用第三方API来获得IP地址的解析结果,而是,首先在本地缓存中查询,如果未查找到,才到外部服务器的缓存中查询,如果仍然未查找到,才会调用第三方API,这样,首先通过两级缓存分别查询的方式,能够将之前已经有的IP地址的解析结果从缓存中快速获取到,因为从缓存中查询的速度远远高于从数据库中查询的速度,这样,则大大提高了获得IP地址的解析结果的获取效率,从而为后续业务诸如智能家居设备的定位提供了更为快速的参数。
进一步地,在上述图2所示流程中,利用了两级缓存来存储IP地址的解析结果,作为第二级缓存的本地缓存以及作为第一级缓存的外部服务器的缓存,将本地缓存与外部缓存相结合分级缓存IP地址的解析结果,可以更为高效地得到IP地址的解析结果。具体地,在每次接收到调用请求时,都会在本地查询该二级缓存比如Ehcache,如果能在本地的二级缓存比如Ehcache中查询到IP地址的解析结果,则极大地提高了IP地址的解析结果的获取效率。如果在本地的二级缓存比如Ehcache中无法查询到IP地址的解析结果,则说明在本地没有处理过对应该IP地址的请求,因此可以查询外部服务器的缓存比如Redis,以便在外部服务器处理过对应该IP地址的请求的情况下,从该外部服务器中快速获取该IP地址的解析结果。
在本说明书和一个实施例中,在步骤209中接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果之后,表明在一级缓存中已经保存有IP地址的解析结果,因此,为了加快后续对该IP地址的解析处理,可以将从外部服务器的缓存中获取到的该结果同步到本地缓存中,也就是说,以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对存储到本地缓存比如Ehcache中。
在本说明书一个实施例中,本地缓存包括:Ehcache。
在本说明书的一个实施例中,外部服务器的缓存包括:Redis。
当采用Ehcache作为本地的二级缓存,并采用Redis作为外部的一级缓存时,可以进一步利用Ehcache以及Redis的缓存架构优势。比如,EhCache是一个纯Java的进程内缓存框架,具有快速、精干等特点。Redis数据库,即REmote DIctionary Server(Redis)是一个key-value存储系统,其基于内存运行,性能高效。
在本说明书的一个实施例中,当本地缓存采用Ehcache时,步骤205中从本地缓存中查询是否存在该IP地址的解析结果包括:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,判断Element中是否存在该IP地址的解析结果。
在实际的业务场景中,随着智能家居设备的日益普及,智能家居设备与云端服务器的交互的信息数量也越来越庞大,这样,一个云端服务器会同时接收到高并发的业务访问,处理的IP地址的解析结果也会越来越多。这样,导致在云端服务器的本地缓存中所存储的IP地址的解析结果的数量也会日益增加,如果不进行处理,会导致缓存无法满足新的IP地址解析结果的存储需求。因此,本说明书的一个实施例中,需要判断Ehcache中缓存的哪些IP地址的解析结果可以被清理,保证Ehcache缓存的有效性。基于此,在本说明书的一个实施例中,进一步包括Ehcache缓存中IP地址的解析结果的清除处理,该清除处理具体可以包括:
预先设置第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
相应地,在将一个IP地址的解析结果存入所述本地缓存Ehcache之后,判断该IP地址的解析结果所对应的第一参数的值是否为真,如果否,则计算根据该IP地址的解析结果被存入Ehcache的参数设置以及计算结果,确定是否删除该IP地址的解析结果;其中,a、b为介于0与1之间的常数,且a、b之和为1,x表征所述第二参数,y表征所述第三参数,S4表示预设的x的取值的上限值,x的取值范围属于T;S2表示预设的y的取值的上限值,y的取值范围属于Y,i和j为变量。
在确定是否删除任意一个IP地址的解析结果时,如果对应该IP地址的解析结果的第二参数的值不小于上述计算式计算出的x的值,且对应该IP地址的解析结果的第三参数的值不小于上述计算式计算出的y的值,则将该IP地址的解析结果从缓存Ehcache中删除。
举例说明上述清除处理。比如针对一个智能冰箱的调用请求,在首次获得了该智能冰箱对应的IP地址的解析结果M之后,将M存入Ehcache中,同时,针对该IP地址的解析结果M设置第一参数的值为假,即不需要永久保存,设置第二参数的值为1天,设置第三参数的值为3小时。云端服务器会实时判断是否需要从Ehcache中删除该IP地址的解析结果M,首先判断第一参数的值,因为为假即不需要永久保存,因此,需要通过后续第二参数和第三参数的值来判断什么时候可以删除该IP地址的解析结果M,此时需要计算其中,a、b为介于0与1之间的常数,可以视为权重值,即通过该权重值来分配第二参数和第三参数对于删除时间的贡献,比如,在某个业务场景下,更多的考虑M在缓存中的创建时间来决定何时删除一个IP地址的解析结果,则可以将a设置为0.8,将b设置为0.2,又如,在另一个业务场景下,更多的需要考虑智能冰箱最后一次访问的时间来决定何时删除一个IP地址的解析结果,则可以将a设置为0.3,将b设置为0.7。其中x表征所述第二参数的值即等于1天为24小时,y表征所述第三参数即等于3小时,S1至S2表示预设的y的取值范围,用Y表示,即Y={S1≤y≤S2},S3至S4表示预设的x的取值范围,用T表示,即T={S3≤x≤S4}。比如存入缓存Ehcache中的所有IP地址的解析结果从自创建日期起至失效时的间隔时间不能小于0.5小时,不能大于100小时,则S3=0.5,S4=100;比如存入缓存Ehcache中的所有IP地址的解析结果从最后一次访问缓存的日期至失效之时的时间间隔不能小于0.1小时,不能大于24小时,则S1=0.1,S2=24。比如对于一个IP地址的解析结果记为M,如果该M对应的的第二参数的取值不小于上述计算式计算出的x的值,且该M对应的第三参数的取值不小于上述计算式计算出的y的值,那么,则需要删除该M,否则不删除该M。
可见,在确定是否从Ehcache中删除一个IP地址解析结果时,不是仅仅考虑该IP地址解析结果的存储时间,而是通盘考虑存储在Ehcache中的所有IP地址解析结果的参数设置,这样确定的x及y的值,更加符合将数量众多的IP地址解析结果存储在Ehcache中时,考虑所有被存储的IP地址解析结果的参数设置,从而更为准确地筛选出需要删除的IP地址解析结果。删除方式更为合理,提高了Ehcache中的缓存效率。
在本说明书的一个实施例中,IP地址的解析结果即value可以为所述IP地址对应的城市编码;这样,该方法进一步包括:根据所述IP地址对应的城市编码,定位所述智能家居设备。这样,则可以让云端服务器通过该value快速定位到智能家居设备,比如在北京,从而针对该城市地域范围提供有针对性的特色的服务。
在本说明书的一个实施例中,步骤211中,调用第三方API进行该IP地址的解析的具体过程可以包括:通过线程池调用第三方API进行该IP地址的解析。可以通过HTTP调取第三方API,并且采用的是线程池的方法。避免多个请求执行时,线程等待、线程卡死等情况出现,一方面保证程序的正常执行,另外提高了执行效率。
在本说明书的一个实施例中,提供了一种智能家居设备的IP地址的解析装置,参见图3,包括:
IP地址获取单元301,被配置为接收智能家居设备的调用请求;从该调用请求中获取IP地址;
缓存查询单元302,被配置为从本地缓存中查询是否存在该IP地址的解析结果;如果存在,则该IP地址的解析成功;如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功,如果未接收到外部服务器发来的该IP地址的解析结果,则触发第三方查询单元;
第三方查询单元303,被配置为在受到触发后,调用第三方API进行该IP地址的解析,并在获取第三方API返回的IP地址的解析结果后,以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。
在本说明书装置的一个实施例中,缓存查询单元302在所述接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果之后,进一步执行:以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对存储到所述本地缓存中。
在本说明书装置的一个实施例中,所述本地缓存包括:Ehcache;和/或,所述外部服务器的缓存包括:Redis。
在本说明书装置的一个实施例中,当所述本地缓存包括Ehcache时,
所述缓存查询单元302被配置为执行:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
在本说明书装置的一个实施例中,当所述本地缓存包括Ehcache时,预先设置有第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
所述缓存查询单元302被配置为执行:在将一个IP地址的解析结果存入所述本地缓存Ehcache之后,判断该IP地址的解析结果所对应的第一参数的值是否为真,如果否,则计算根据该IP地址的解析结果被存入Ehcache的参数设置以及计算结果,确定是否删除该IP地址的解析结果;其中,a、b为介于0与1之间的常数,且a、b之和为1,x表征所述第二参数,y表征所述第三参数,S4表示预设的x的取值的上限值,x的取值范围属于T;S2表示预设的y的取值的上限值,y的取值范围属于Y,i和j为变量。
在本说明书装置的一个实施例中,所述value为所述IP地址对应的城市编码;
进一步包括:定位模块,配置为根据所述IP地址对应的城市编码,定位所述智能家居设备。
在本说明书装置的一个实施例中,第三方查询单元303配置为执行:通过线程池调用第三方API进行该IP地址的解析。
本说明书一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行说明书中任一个实施例中的方法。
本说明书一个实施例提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现执行说明书中任一个实施例中的方法。
可以理解的是,本说明书实施例示意的结构并不构成对本说明书实施例的装置的具体限定。在说明书的另一些实施例中,上述装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置、系统内的各模块之间的信息交互、执行过程等内容,由于与本说明书方法实施例基于同一构思,具体内容可参见本说明书方法实施例中的叙述,此处不再赘述。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、挂件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (10)
1.智能家居设备的IP地址的解析方法,应用于云端服务器,包括:
接收智能家居设备的调用请求;
从该调用请求中获取IP地址;
从本地缓存中查询是否存在该IP地址的解析结果;
如果存在,则该IP地址的解析成功;
如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;
如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功;
如果未接收到,则调用第三方API进行该IP地址的解析;
获取第三方API返回的IP地址的解析结果,并以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。
2.根据权利要求1所述的方法,其中,在所述接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果之后,进一步包括:以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对存储到所述本地缓存中。
3.根据权利要求1所述的方法,其中,所述本地缓存包括:Ehcache;和/或,所述外部服务器的缓存包括:Redis。
4.根据权利要求3所述的方法,其中,当所述本地缓存包括Ehcache时,
所述从本地缓存中查询是否存在该IP地址的解析结果包括:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
5.根据权利要求3或4所述的方法,当所述本地缓存包括Ehcache时,预先设置第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
6.根据权利要求1至5中任一所述的方法,其中,所述value为所述IP地址对应的城市编码;该方法进一步包括:根据所述IP地址对应的城市编码,定位所述智能家居设备;和/或,
所述调用第三方API进行该IP地址的解析,包括:通过线程池调用第三方API进行该IP地址的解析。
7.智能家居设备的IP地址的解析装置,包括:
IP地址获取单元,被配置为接收智能家居设备的调用请求;从该调用请求中获取IP地址;
缓存查询单元,被配置为从本地缓存中查询是否存在该IP地址的解析结果;如果存在,则该IP地址的解析成功;如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功,如果未接收到外部服务器发来的该IP地址的解析结果,则触发第三方查询单元;
第三方查询单元,被配置为在受到触发后,调用第三方API进行该IP地址的解析,并在获取第三方API返回的IP地址的解析结果后,以该IP地址为key,
并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中。
8.根据权利要求7所述的装置,其中,当所述本地缓存包括Ehcache时,
所述缓存查询单元被配置为执行:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
9.根据权利要求7或8所述的方法,当所述本地缓存包括Ehcache时,预先设置有第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
10.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110928342.XA CN113596177B (zh) | 2021-08-13 | 2021-08-13 | 智能家居设备的ip地址的解析方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110928342.XA CN113596177B (zh) | 2021-08-13 | 2021-08-13 | 智能家居设备的ip地址的解析方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113596177A true CN113596177A (zh) | 2021-11-02 |
CN113596177B CN113596177B (zh) | 2023-06-27 |
Family
ID=78257604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110928342.XA Active CN113596177B (zh) | 2021-08-13 | 2021-08-13 | 智能家居设备的ip地址的解析方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596177B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113840020A (zh) * | 2021-09-28 | 2021-12-24 | 中国联合网络通信集团有限公司 | 基于ip地址信息的定位方法、装置、电子设备和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140012938A1 (en) * | 2012-07-09 | 2014-01-09 | University Of Southern California | Preventing race condition from causing stale data items in cache |
CN103678338A (zh) * | 2012-09-07 | 2014-03-26 | 中国科学院计算机网络信息中心 | 一种带智能缓存模块的物联网标识解析方法 |
US20150081658A1 (en) * | 2013-09-18 | 2015-03-19 | Ims Health Incorporated | System and method for fast query response |
CN105183394A (zh) * | 2015-09-21 | 2015-12-23 | 北京奇虎科技有限公司 | 一种数据存储处理方法和装置 |
CN106331212A (zh) * | 2016-08-25 | 2017-01-11 | 北京润通丰华科技有限公司 | 一种基于dns缓存驻留的域名解析方法及系统 |
CN107025243A (zh) * | 2016-02-02 | 2017-08-08 | 北京神州泰岳软件股份有限公司 | 一种资源数据的查询方法、查询客户端和查询系统 |
CN109684358A (zh) * | 2017-10-18 | 2019-04-26 | 北京京东尚科信息技术有限公司 | 数据查询的方法和装置 |
CN110674432A (zh) * | 2019-09-09 | 2020-01-10 | 中国平安财产保险股份有限公司 | 二级缓存方法、装置及计算机可读存储介质 |
CN113220981A (zh) * | 2020-02-06 | 2021-08-06 | 北京沃东天骏信息技术有限公司 | 一种优化缓存的方法和装置 |
-
2021
- 2021-08-13 CN CN202110928342.XA patent/CN113596177B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140012938A1 (en) * | 2012-07-09 | 2014-01-09 | University Of Southern California | Preventing race condition from causing stale data items in cache |
CN103678338A (zh) * | 2012-09-07 | 2014-03-26 | 中国科学院计算机网络信息中心 | 一种带智能缓存模块的物联网标识解析方法 |
US20150081658A1 (en) * | 2013-09-18 | 2015-03-19 | Ims Health Incorporated | System and method for fast query response |
CN105183394A (zh) * | 2015-09-21 | 2015-12-23 | 北京奇虎科技有限公司 | 一种数据存储处理方法和装置 |
CN107025243A (zh) * | 2016-02-02 | 2017-08-08 | 北京神州泰岳软件股份有限公司 | 一种资源数据的查询方法、查询客户端和查询系统 |
CN106331212A (zh) * | 2016-08-25 | 2017-01-11 | 北京润通丰华科技有限公司 | 一种基于dns缓存驻留的域名解析方法及系统 |
CN109684358A (zh) * | 2017-10-18 | 2019-04-26 | 北京京东尚科信息技术有限公司 | 数据查询的方法和装置 |
CN110674432A (zh) * | 2019-09-09 | 2020-01-10 | 中国平安财产保险股份有限公司 | 二级缓存方法、装置及计算机可读存储介质 |
CN113220981A (zh) * | 2020-02-06 | 2021-08-06 | 北京沃东天骏信息技术有限公司 | 一种优化缓存的方法和装置 |
Non-Patent Citations (2)
Title |
---|
敖小玲;黄晋;: "Hibernate缓存机制研究与应用" * |
樊红林: "基于Java EE的大规模网络应用系统性能优化研究与实践" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113840020A (zh) * | 2021-09-28 | 2021-12-24 | 中国联合网络通信集团有限公司 | 基于ip地址信息的定位方法、装置、电子设备和存储介质 |
CN113840020B (zh) * | 2021-09-28 | 2023-06-02 | 中国联合网络通信集团有限公司 | 基于ip地址信息的定位方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113596177B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111277643B (zh) | 一种http链路跟踪记录方法及系统 | |
CN103607312B (zh) | 用于服务器系统的数据请求处理方法及系统 | |
CN109167840B (zh) | 一种任务推送方法、节点自治服务器及边缘缓存服务器 | |
CN107026879B (zh) | 一种数据缓存方法及后台应用系统 | |
CN110134738A (zh) | 分布式存储系统资源预估方法、装置 | |
CN103491201A (zh) | 一种域名解析的方法和域名服务器 | |
CN111913917A (zh) | 一种文件处理方法、装置、设备和介质 | |
CN108154024B (zh) | 一种数据检索方法、装置及电子设备 | |
CN113961832A (zh) | 页面渲染的方法、装置、设备、存储介质及程序产品 | |
CN113596177A (zh) | 智能家居设备的ip地址的解析方法和装置 | |
US11216352B2 (en) | Method for automatically analyzing bottleneck in real time and an apparatus for performing the method | |
CN116881288A (zh) | 一种数据查询方法、装置及设备 | |
CN110781424A (zh) | 用于Web项目自动化测试的智能清除浏览器缓存的方法 | |
CN110865845B (zh) | 提高接口访问效率的方法、存储介质 | |
CN113138943B (zh) | 一种处理请求的方法和装置 | |
CN110061864B (zh) | 一种域名配置自动化验证的方法和系统 | |
CN113301180A (zh) | 对象标识符解析方法、装置、设备及存储介质 | |
CN108846096B (zh) | 网页的提示方法、终端、网关设备及用户边缘设备 | |
CN114253776A (zh) | 内存检测模型的训练方法、装置、设备和介质 | |
CN107229699B (zh) | 提升移动端用户搜索体验的系统及方法 | |
CN112559570A (zh) | 缓存数据获取方法、装置、设备及存储介质 | |
CN107124293B (zh) | 一种分布式网络系统的协议管理方法及系统 | |
CN117235024B (zh) | 基于代码分析的缓存更新方法、系统、存储介质及设备 | |
CN114780267B (zh) | 一种接口调用方法、装置、设备及存储介质 | |
CN112347141B (zh) | 一种数据访问控制方法、系统、设备及介质 |
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 |