CN113596177B - 智能家居设备的ip地址的解析方法和装置 - Google Patents

智能家居设备的ip地址的解析方法和装置 Download PDF

Info

Publication number
CN113596177B
CN113596177B CN202110928342.XA CN202110928342A CN113596177B CN 113596177 B CN113596177 B CN 113596177B CN 202110928342 A CN202110928342 A CN 202110928342A CN 113596177 B CN113596177 B CN 113596177B
Authority
CN
China
Prior art keywords
address
analysis result
cache
value
parameter
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
Application number
CN202110928342.XA
Other languages
English (en)
Other versions
CN113596177A (zh
Inventor
朱堂华
陈良
邓宏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Hongmei Intelligent Technology Co Ltd
Original Assignee
Sichuan Hongmei Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sichuan Hongmei Intelligent Technology Co Ltd filed Critical Sichuan Hongmei Intelligent Technology Co Ltd
Priority to CN202110928342.XA priority Critical patent/CN113596177B/zh
Publication of CN113596177A publication Critical patent/CN113596177A/zh
Application granted granted Critical
Publication of CN113596177B publication Critical patent/CN113596177B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling 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/63Routing a service request depending on the request content or context
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total 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地址的解析成功;
如果不存在,则以所述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地址的解析结果所对应的第一参数的值是否为真,如果否,则计算
Figure SMS_1
根据该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地址的解析结果所对应的第一参数的值是否为真,如果否,则计算
Figure SMS_2
根据该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地址的解析结果所对应的第一参数的值是否为真,如果否,则计算
Figure SMS_3
根据该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,此时需要计算
Figure SMS_4
其中,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地址的解析结果所对应的第一参数的值是否为真,如果否,则计算
Figure SMS_5
根据该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 (8)

1.智能家居设备的IP地址的解析方法,应用于云端服务器,包括:
接收智能家居设备的调用请求;
从该调用请求中获取IP地址;
从本地缓存中查询是否存在该IP地址的解析结果;
如果存在,则该IP地址的解析成功;
如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;
如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功;
如果未接收到,则调用第三方API进行该IP地址的解析;
获取第三方API返回的IP地址的解析结果,并以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中;
当所述本地缓存包括Ehcache时,预先设置第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
该方法进一步包括:在将一个IP地址的解析结果存入所述本地缓存Ehcache之后,判断该IP地址的解析结果所对应的第一参数的值是否为真,如果否,则计算
Figure FDA0004143325280000011
根据该IP地址的解析结果被存入Ehcache的参数设置以及计算结果,确定是否删除该IP地址的解析结果;其中,a、b为介于0与1之间的常数,x表征所述第二参数,y表征所述第三参数,S4表示预设的x的取值的上限值,x的取值范围属于T;S2表示预设的y的取值的上限值,y的取值范围属于Y;
在确定是否删除任意一个IP地址的解析结果时,如果对应该IP地址的解析结果的第二参数的值不小于上述计算式计算出的x的值,且对应该IP地址的解析结果的第三参数的值不小于上述计算式计算出的y的值,则将该IP地址的解析结果从缓存Ehcache中删除。
2.根据权利要求1所述的方法,其中,在所述接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果之后,进一步包括:以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对存储到所述本地缓存中。
3.根据权利要求1所述的方法,其中,所述本地缓存包括:Ehcache;和/或,所述外部服务器的缓存包括:Redis。
4.根据权利要求3所述的方法,其中,当所述本地缓存包括Ehcache时,
所述从本地缓存中查询是否存在该IP地址的解析结果包括:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
5.根据权利要求1至4中任一所述的方法,其中,所述value为所述IP地址对应的城市编码;该方法进一步包括:根据所述IP地址对应的城市编码,定位所述智能家居设备;和/或,
所述调用第三方API进行该IP地址的解析,包括:通过线程池调用第三方API进行该IP地址的解析。
6.智能家居设备的IP地址的解析装置,包括:
IP地址获取单元,被配置为接收智能家居设备的调用请求;从该调用请求中获取IP地址;
缓存查询单元,被配置为从本地缓存中查询是否存在该IP地址的解析结果;如果存在,则该IP地址的解析成功;如果不存在,则以所述IP地址为key,向外部服务器发送携带该key的缓存查询请求;如果接收到外部服务器发来的从该外部服务器的缓存中查询到的IP地址的解析结果,则该IP地址的解析成功,如果未接收到外部服务器发来的该IP地址的解析结果,则触发第三方查询单元;
第三方查询单元,被配置为在受到触发后,调用第三方API进行该IP地址的解析,并在获取第三方API返回的IP地址的解析结果后,以该IP地址为key,并以该IP地址的解析结果为value,将该key和value对分别存储到所述本地缓存和所述外部服务器的缓存中;
当所述本地缓存包括Ehcache时,预先设置有第一参数、第二参数及第三参数;其中,第一参数表征是否永久保存;第二参数表征缓存自创建日期起至失效时的间隔时间;第三参数表征缓存创建以后,最后一次访问缓存的日期至失效之时的时间间隔;
所述缓存查询单元被配置为执行:在将一个IP地址的解析结果存入所述本地缓存Ehcache之后,判断该IP地址的解析结果所对应的第一参数的值是否为真,如果否,则计算
Figure FDA0004143325280000031
根据该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中删除。
7.根据权利要求6所述的装置,其中,当所述本地缓存包括Ehcache时,
所述缓存查询单元被配置为执行:通过CacheManager的构造函数创建一个新的CacheManager,通过创建的该新的CacheManager查询该新的CacheManager所关联的Element,从本地缓存中查询是否存在该IP地址的解析结果。
8.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-5中任一项所述的方法。
CN202110928342.XA 2021-08-13 2021-08-13 智能家居设备的ip地址的解析方法和装置 Active CN113596177B (zh)

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 CN113596177A (zh) 2021-11-02
CN113596177B true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113840020B (zh) * 2021-09-28 2023-06-02 中国联合网络通信集团有限公司 基于ip地址信息的定位方法、装置、电子设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678338A (zh) * 2012-09-07 2014-03-26 中国科学院计算机网络信息中心 一种带智能缓存模块的物联网标识解析方法
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 北京沃东天骏信息技术有限公司 一种优化缓存的方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9674296B2 (en) * 2012-07-09 2017-06-06 University Of Southern California Preventing race condition from causing stale data items in cache
US9870415B2 (en) * 2013-09-18 2018-01-16 Quintiles Ims Incorporated System and method for fast query response

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678338A (zh) * 2012-09-07 2014-03-26 中国科学院计算机网络信息中心 一种带智能缓存模块的物联网标识解析方法
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)

* Cited by examiner, † Cited by third party
Title
敖小玲 ; 黄晋 ; .Hibernate缓存机制研究与应用.计算机与现代化.2010,(09),全文. *
樊红林.基于Java EE的大规模网络应用系统性能优化研究与实践.中国优秀硕士学位论文全文数据库.2017,(第05期),I138-561. *

Also Published As

Publication number Publication date
CN113596177A (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
CN111464615B (zh) 请求处理方法、装置、服务器及存储介质
CN110049503B (zh) 一种获取数据的方法和设备
US11243921B2 (en) Database expansion system, equipment, and method of expanding database
US11500755B1 (en) Database performance degradation detection and prevention
CN113568924B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN110210241B (zh) 一种数据脱敏方法和装置
CN111382206B (zh) 一种数据存储方法及装置
CN113596177B (zh) 智能家居设备的ip地址的解析方法和装置
CN113900907B (zh) 一种映射构建方法和系统
JP4019817B2 (ja) 分散オブジェクト制御方法およびその実施システム
CN107451252A (zh) 基于api的快速查询方法及其系统
CN113961832A (zh) 页面渲染的方法、装置、设备、存储介质及程序产品
CN109344353B (zh) 一种可配置化的本地缓存刷新方法及终端
CN112491943A (zh) 数据请求方法、装置、存储介质和电子设备
CN113138943B (zh) 一种处理请求的方法和装置
CN114637969A (zh) 目标对象的鉴权方法及装置
CN108491448B (zh) 一种数据推送的方法和装置
CN110389966B (zh) 一种信息处理方法及装置
US20200175163A1 (en) Feedback-directed static analysis
CN114780267B (zh) 一种接口调用方法、装置、设备及存储介质
US20240089339A1 (en) Caching across multiple cloud environments
CN110784479B (zh) 一种数据校验方法、装置、电子设备及存储介质
CN117632445B (zh) 请求处理方法以及装置、任务执行方法以及装置
CN112149107B (zh) 统一权限管理方法、系统、装置及存储介质
US20240168826A1 (en) Method of analyzing change in api in cloud

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