CN110866013A - 一种优化Android应用频繁网络请求的三级缓存方法 - Google Patents
一种优化Android应用频繁网络请求的三级缓存方法 Download PDFInfo
- Publication number
- CN110866013A CN110866013A CN201911116860.0A CN201911116860A CN110866013A CN 110866013 A CN110866013 A CN 110866013A CN 201911116860 A CN201911116860 A CN 201911116860A CN 110866013 A CN110866013 A CN 110866013A
- Authority
- CN
- China
- Prior art keywords
- data
- network
- network requests
- caching method
- cache
- 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.)
- Pending
Links
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/22—Indexing; Data structures therefor; Storage structures
-
- 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/23—Updating
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0261—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
- H04W52/0264—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by selectively disabling software applications
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
本发明涉及一种优化Android应用频繁网络请求的三级缓存方法,本发明旨在解决频繁的网络请求导致的能耗问题,增加缓存策略,优化数据读取,增加响应速度,提高用户体验。对于需要网络请求的数据可以通过先读取memcache,如果cache中没有的话,读取数据库,数据库没有数据或者数据过期的话再去请求网络,通过网络获取到数据后将数据依次插入数据库,更新memcache,这样能够保证只要命中了cache,就不会有文件或者网络操作,加快数据的读取速度,从而减少网络请求带来的能耗问题。
Description
技术领域
本发明涉及手机性能优化技术领域,尤其涉及一种优化Android应用频繁网络请求的三级缓存方法。
背景技术
目前很多Android智能手机在使用数据上网后,网络数据或者Wifi一直没有关闭,应用频繁进行网络请求,导致手机一直处于运行状态。应用程序的网络请求是造成电量消耗的主要原因,频繁的网络请求也会导致流量消耗严重。其消耗的电量和流量较大,在手机一段时间不进行充电、电池储电状态较差的情况下,就会发生电量耗尽的情况。特别是对于一些小容量蓄电池的Android手机来说,经常面临的问题就是很容易将电池耗尽而自动关机的窘境,除非要多频率地进行充电。耗电量、高流量都是用户很关心的问题,频繁的网络请求会导致手机耗电,机身发烫,用户流量激增,会降低产品体验,最终导致用户卸载APP。因此设计一种优化Android应用频繁网络请求的三级缓存方法是十分有必要的。
发明内容
本发明为克服上述的不足之处,目的在于提供一种优化Android应用频繁网络请求的三级缓存方法,本发明旨在解决频繁的网络请求导致的能耗问题,增加缓存策略,优化数据读取,增加响应速度,提高用户体验。对于需要网络请求的数据可以通过先读取memcache,如果cache中没有的话,读取数据库,数据库没有数据或者数据过期的话再去请求网络,通过网络获取到数据后将数据依次插入数据库,更新memcache,这样能够保证只要命中了cache,就不会有文件或者网络操作,加快数据的读取速度,从而减少网络请求带来的能耗问题。
本发明是通过以下技术方案达到上述目的:一种优化Android应用频繁网络请求的三级缓存方法,包括如下步骤:
(1)获取数据;
(2)判断是否需要实时网络获取;若是,则发起网络请求查询数据,流程结束;若否,则进入步骤(3);
(3)内存缓存读取memcache,若命中了cache,则加快数据读取,流程结束;若没有命中,则进入步骤(4);
(4)读取本地数据库查询命中,若没有命中或者数据过期,则进入步骤(5);若命中,则进行判断数据是否有效:
(5)发起网络请求查询数据,将数据依次插入数据库,更新memcache至本地数据库和内存缓存,流程结束。
作为优选,所述数据过期的定义为超过默认时间的数据,默认时间是预设的。
作为优选,所述步骤(4)中,判断数据是否有效的方法如下:(i)若数据有效,则更新内存缓存数据,流程结束;
(ii)若数据无效,则进入步骤(5)。
本发明的有益效果在于:本发明解决了频繁的网络请求导致的能耗问题,增加缓存策略,优化数据读取,增加响应速度,加快数据的读取速度,提高用户体验。
附图说明
图1是本发明的方法流程示意图。
具体实施方式
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此:
实施例:本发明的目的是解决频繁的网络请求导致的能耗问题,增加缓存策略,优化数据读取,增加响应速度,提高用户体验。对于需要网络请求的数据可以通过先读取memcache,如果cache中没有的话,读取数据库,数据库没有数据或者数据过期的话再去请求网络,通过网络获取到数据后将数据依次插入数据库,更新memcache,这样能够保证只要命中了cache,就不会有文件或者网络操作,加快数据的读取速度,从而减少网络请求带来的能耗问题。
如图1所示,一种优化Android应用频繁网络请求的三级缓存方法包括如下步骤:
(1)获取数据;
(2)判断是否需要实时网络获取。若是,则发起网络请求查询数据,流程结束。若否,则进入步骤(3);
(3)内存缓存读取memcache,若命中了cache,则加快数据读取,流程结束。若没有命中,则进入步骤(4);
(4)读取本地数据库查询命中,若没有命中或者数据过期则进入步骤(5),其中数据过期可以设定一个默认时间,比如8小时或者10小时;若命中,则需要判断数据是否有效:
(4.1)若数据有效,则更新内存缓存数据,流程结束;
(4.2)若数据无效,则进入步骤(5);
(5)发起网络请求查询数据,将数据依次插入数据库,更新memcache至本地数据库和内存缓存,保证只要命中了cache,就不会有文件或者网络操作,加快数据的读取速度,流程结束。
以上的所述乃是本发明的具体实施例及所运用的技术原理,若依本发明的构想所作的改变,其所产生的功能作用仍未超出说明书及附图所涵盖的精神时,仍应属本发明的保护范围。
Claims (3)
1.一种优化Android应用频繁网络请求的三级缓存方法,其特征在于,包括如下步骤:
(1)获取数据;
(2)判断是否需要实时网络获取;若是,则发起网络请求查询数据,结束流程;若否,则进入步骤(3);
(3)内存缓存读取memcache,若命中了cache,则加快数据读取,流程结束;若没有命中,则进入步骤(4);
(4)读取本地数据库查询命中,若没有命中或者数据过期,则进入步骤(5);若命中,则进行判断数据是否有效:
(5)发起网络请求查询数据,将数据依次插入数据库,更新memcache至本地数据库和内存缓存,流程结束。
2.根据权利要求1所述的一种优化Android应用频繁网络请求的三级缓存方法,其特征在于:所述数据过期的定义为超过默认时间的数据,默认时间是预设的。
3.根据权利要求1所述的一种优化Android应用频繁网络请求的三级缓存方法,其特征在于:所述步骤(4)中,判断数据是否有效的方法如下:
(i)若数据有效,则更新内存缓存数据,流程结束;
(ii)若数据无效,则进入步骤(5)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911116860.0A CN110866013A (zh) | 2019-11-15 | 2019-11-15 | 一种优化Android应用频繁网络请求的三级缓存方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911116860.0A CN110866013A (zh) | 2019-11-15 | 2019-11-15 | 一种优化Android应用频繁网络请求的三级缓存方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110866013A true CN110866013A (zh) | 2020-03-06 |
Family
ID=69654278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911116860.0A Pending CN110866013A (zh) | 2019-11-15 | 2019-11-15 | 一种优化Android应用频繁网络请求的三级缓存方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110866013A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140244584A1 (en) * | 2013-02-26 | 2014-08-28 | Facebook, Inc. | System and method for implementing cache consistent regional clusters |
CN106372109A (zh) * | 2016-08-19 | 2017-02-01 | 中国银联股份有限公司 | 互联网资源文件缓存方法及装置 |
CN106802955A (zh) * | 2017-01-19 | 2017-06-06 | 济南浪潮高新科技投资发展有限公司 | 一种图片数据缓存方法 |
CN110247939A (zh) * | 2018-03-08 | 2019-09-17 | 上海秦苍信息科技有限公司 | 利用多级缓存技术实现的高性能混合框架 |
-
2019
- 2019-11-15 CN CN201911116860.0A patent/CN110866013A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140244584A1 (en) * | 2013-02-26 | 2014-08-28 | Facebook, Inc. | System and method for implementing cache consistent regional clusters |
CN106372109A (zh) * | 2016-08-19 | 2017-02-01 | 中国银联股份有限公司 | 互联网资源文件缓存方法及装置 |
CN106802955A (zh) * | 2017-01-19 | 2017-06-06 | 济南浪潮高新科技投资发展有限公司 | 一种图片数据缓存方法 |
CN110247939A (zh) * | 2018-03-08 | 2019-09-17 | 上海秦苍信息科技有限公司 | 利用多级缓存技术实现的高性能混合框架 |
Non-Patent Citations (2)
Title |
---|
SUNNYAXIN: "Android:简单实现并理解图片三级缓存", 《简书》 * |
段虎才等: "WebKit内核的嵌入式浏览器磁盘缓存方法", 《计算机工程与设计》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102981825B (zh) | 一种移动终端后台数据的管理方法及系统 | |
CN103617131A (zh) | 一种实现数据缓存的方法 | |
CN106877435A (zh) | 一种终端的充电方法及终端 | |
CN103198108A (zh) | 一种索引数据更新方法、检索服务器及系统 | |
CN108804294A (zh) | 电量提醒的方法、装置、设备和计算机可读存储介质 | |
CN109817200A (zh) | 语音唤醒的优化装置及方法 | |
CN103377292B (zh) | 数据库结果集缓存方法及设备 | |
CN103631972B (zh) | 一种列访问感知的数据缓存方法及系统 | |
CN103294512A (zh) | 一种定时器延迟启动方法和系统 | |
CN103794240A (zh) | 在线音频数据的存储方法及装置 | |
CN104065834A (zh) | 降低终端功耗的方法、装置和终端 | |
CN110866013A (zh) | 一种优化Android应用频繁网络请求的三级缓存方法 | |
CN102958044A (zh) | 基于3g网络通讯终端的动态唤醒方法 | |
CN111246549B (zh) | 一种节点休眠、唤醒时间提供的方法及装置 | |
Wang et al. | SACCS: scalable asynchronous cache consistency scheme for mobile environments | |
CN102868715A (zh) | 适用于wap 服务的缓存架构系统及其缓存方法 | |
CN107506020A (zh) | 一种减少智能终端设备耗电的方法、装置和智能终端设备 | |
WO2016110056A1 (zh) | 一种终端及终端省电的方法 | |
CN105183135A (zh) | 节省智能手机的耗电量的方法以及智能手机 | |
CN107979849B (zh) | 一种tau周期配置方法和装置 | |
CN102436443A (zh) | 一种提升基于数据库业务系统处理性能的方法 | |
CN109765986A (zh) | 省电模式控制方法、终端设备及计算机可读存储介质 | |
CN104882946A (zh) | 一种手机充电管理软件及其充电管理方法 | |
CN105843631A (zh) | 一种提高系统固件烧写速度的方法 | |
CN113691581A (zh) | 一种高效的cdn刷新分片的方法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200306 |