CN103118099B - 基于散列算法的图形图像缓存方法 - Google Patents
基于散列算法的图形图像缓存方法 Download PDFInfo
- Publication number
- CN103118099B CN103118099B CN201310029555.4A CN201310029555A CN103118099B CN 103118099 B CN103118099 B CN 103118099B CN 201310029555 A CN201310029555 A CN 201310029555A CN 103118099 B CN103118099 B CN 103118099B
- Authority
- CN
- China
- Prior art keywords
- buffer memory
- image data
- client
- graphic image
- list item
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种基于散列算法的图形图像缓存方法,在服务器端构建有Hash表和服务器端缓存数组;在客户端构建客户端缓存数组,用于缓存图形图像数据,服务器端将要发往客户端的图形图像数据计算出HashID,再根据HashID直接去Hash表中寻找对应的表项;如果找到,则直接发送缓存ID到客户端,客户端通过缓存ID,直接从客户端缓存数组中取出图形图像数据;如果找不到,则创建新表项;再将该图形图像数据和新表项里的缓存ID发送给客户端,由客户端存放到指定位置。本发明将Hash表和数组结合起来,有效减小图形图像数据在传输过程中给带宽带来的压力,且简单高效。
Description
技术领域
本发明涉及一种图形图像缓存方法。
背景技术
由于图形图像的数据量较大,在传输图形图像的数据时,会对带宽产生较大的压力,通过缓存机制能够极大的减少带宽的压力,以往的缓存方式,需要在客户端和服务器端均维护一个缓存表,实现较为复杂,且需要使用缓存ID来遍历整个缓存表,效率低下。
发明内容
本发明要解决的技术问题,在于提供一种基于散列算法的图形图像缓存方法,可有效减小图形图像数据在传输过程中给带宽带来的压力,且简单高效。
本发明是这样实现的:一种基于散列算法的图形图像缓存方法,其特征在于:在服务器端构建有Hash表和服务器端缓存数组,该Hash表用于检测该图形图像数据是否被客户端缓存,每一个表项存放了图形图像数据的特征值和图形图像数据在服务器端缓存数组中的缓存ID;该服务器端缓存数组该数组存放了图形图像数据的缓存ID,用于同步客户端的缓存数据和统计缓存信息;在客户端构建客户端缓存数组,用于缓存图形图像数据;
服务器端将要发往客户端的图形图像数据通过散列算法计算出HashID,再根据计算出的HashID,直接去Hash表中寻找对应的表项;
如果对应的表项存在,且该表项里的特征值与图形图像数据的特征值匹配,则直接发送表项中图形图像数据在服务器端缓存数组中的缓存ID到客户端,客户端通过缓存ID,直接从客户端缓存数组中取出图形图像数据;
如果对应的表项存在但图形图像特征值不匹配,或对应的表项不存在,则在Hash表中分配一个新表项,在新表项里存入该图形图像数据的特征值,并从服务器端缓存数组中申请一个空余项,作为新表项里的图形图像在服务器端缓存数组中的缓存ID;再将该图形图像数据和新表项里的缓存ID发送给客户端,客户端则根据接收到的缓存ID找到缓存数组的位置,并将图形图像数据存放到该位置。
进一步的,所述图形图像数据的特征值包括图形图像数据的长、宽以及格式。
本发明具有如下优点:本发明方法服务器端的缓存数组里不需要存放图形图像数据,只需存放一个图形图像数据的缓存标识(即缓存ID),客户端存放缓存的图形图像数据,可有效减小图形图像数据在传输过程中给带宽带来的压力;再因为所有缓存的图形图像标识都存放在服务器端的缓存数组中,那么对缓存数据的统计,优化和抛弃策略会容易而且简洁;且客户端不再需要维护缓存表,简单高效;本发明还通过图形图像的特征数据,有效的解决了Hash表的冲突问题。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
具体实施方式
本发明的基于散列算法的图形图像缓存方法,是在服务器端构建有Hash表和服务器端缓存数组,该Hash表用于检测该图形图像数据是否被客户端缓存,每一个表项存放了图形图像数据的特征值和图形图像数据在服务器端缓存数组中的缓存ID;所述图形图像数据的特征值包括图形图像数据的长、宽以及格式。该服务器端缓存数组该数组存放了图形图像数据的缓存ID,用于同步客户端的缓存数据和统计缓存信息,以便优化缓存及缓存抛弃策略;在客户端构建客户端缓存数组,用于缓存图形图像数据。
如图1所示,服务器端将要发往客户端的图形图像数据通过散列算法计算出HashID,再根据计算出的HashID,直接去Hash表中寻找对应的表项;
如果对应的表项存在,且该表项里的特征值与图形图像数据的特征值匹配,则直接发送表项中图形图像数据在服务器端缓存数组中的缓存ID到客户端,客户端通过缓存ID,直接从客户端缓存数组中取出图形图像数据;
如果对应的表项存在但图形图像特征值不匹配,或对应的表项不存在,说明客户端没有缓存过该图形图像数据,则服务器端在Hash表中分配一个新表项,在新表项里存入该图形图像数据的特征值,并从服务器端缓存数组中申请一个空余项,作为新表项里的图形图像在服务器端缓存数组中的缓存ID;再将该图形图像数据和新表项里的缓存ID发送给客户端,客户端则根据接收到的缓存ID找到缓存数组的位置,并将图形图像数据存放到该位置。
如前所述,本发明通过在服务器端Hash表的表项中存放要缓存的图形图像特征值(包括图形图像的长、宽和格式)和在其服务器端缓存数组中存放缓存ID,将Hash表和数组结合起来,实现一种图形图像数据的缓存机制。对于客户端而言,接收服务器端发送过来的数据,如果是缓存ID,则直接从客户端缓存数组中取出图形图像数据,如果包含有缓存ID和图形图像数据,则根据缓存ID找到缓存数组的位置,并将图形图像数据存放到该位置。其不再需要维护缓存表,实现简单高效。
本发明具有如下优点:本发明方法服务器端的缓存数组里不需要存放图形图像数据,只需存放一个图形图像数据的缓存标识(即缓存ID),客户端存放缓存的图形图像数据,可有效减小图形图像数据在传输过程中给带宽带来的压力;再因为所有缓存的图形图像标识都存放在服务器端的缓存数组中,那么对缓存数据的统计,优化和抛弃策略会容易而且简洁;且客户端不再需要维护缓存表,简单高效;本发明还通过图形图像的特征数据,有效的解决了Hash表的冲突问题。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (2)
1.一种基于散列算法的图形图像缓存方法,其特征在于:在服务器端构建有Hash表和服务器端缓存数组,该Hash表用于检测图形图像数据是否被客户端缓存,每一个表项存放了图形图像数据的特征值和图形图像数据在服务器端缓存数组中的缓存ID;该服务器端缓存数组存放了图形图像数据的缓存ID,用于同步客户端的缓存数据和统计缓存信息;在客户端构建客户端缓存数组,用于缓存图形图像数据;
服务器端将要发往客户端的图形图像数据通过散列算法计算出HashID,再根据计算出的HashID,直接去Hash表中寻找对应的表项;
如果对应的表项存在,且该表项里的特征值与图形图像数据的特征值匹配,则直接发送表项中图形图像数据在服务器端缓存数组中的缓存ID到客户端,客户端通过缓存ID,直接从客户端缓存数组中取出图形图像数据;
如果对应的表项存在但图形图像特征值不匹配,或对应的表项不存在,则在Hash表中分配一个新表项,在新表项里存入该图形图像数据的特征值,并从服务器端缓存数组中申请一个空余项,作为新表项里的图形图像在服务器端缓存数组中的缓存ID;再将该图形图像数据和新表项里的缓存ID发送给客户端,客户端则根据接收到的缓存ID找到缓存数组的位置,并将图形图像数据存放到该位置。
2.根据权利要求1所述的基于散列算法的图形图像缓存方法,其特征在于:所述图形图像数据的特征值包括图形图像数据的长、宽以及格式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310029555.4A CN103118099B (zh) | 2013-01-25 | 2013-01-25 | 基于散列算法的图形图像缓存方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310029555.4A CN103118099B (zh) | 2013-01-25 | 2013-01-25 | 基于散列算法的图形图像缓存方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103118099A CN103118099A (zh) | 2013-05-22 |
CN103118099B true CN103118099B (zh) | 2016-03-02 |
Family
ID=48416369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310029555.4A Active CN103118099B (zh) | 2013-01-25 | 2013-01-25 | 基于散列算法的图形图像缓存方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103118099B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102307539B1 (ko) * | 2015-04-07 | 2021-09-30 | 에스케이플래닛 주식회사 | 클라우드 스트리밍 서비스 시스템, 프로세스 단축을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
CN114443882A (zh) * | 2021-12-22 | 2022-05-06 | 天翼云科技有限公司 | 图像处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6915307B1 (en) * | 1998-04-15 | 2005-07-05 | Inktomi Corporation | High performance object cache |
CN101567006A (zh) * | 2009-05-25 | 2009-10-28 | 中兴通讯股份有限公司 | 一种数据库系统及分布式sql语句执行计划重用方法 |
CN101741986A (zh) * | 2009-12-31 | 2010-06-16 | 优视科技有限公司 | 一种用于移动通讯设备终端的页面缓存方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100530195C (zh) * | 2007-10-25 | 2009-08-19 | 中国科学院计算技术研究所 | 一种分布式文件系统的文件读系统和方法 |
CN102111448B (zh) * | 2011-01-13 | 2013-04-24 | 华为技术有限公司 | 分布式哈希表dht存储系统的数据预取方法、节点和系统 |
CN102739720B (zh) * | 2011-04-14 | 2015-01-28 | 中兴通讯股份有限公司 | 分布式缓存服务器系统及其应用方法、缓存客户端 |
-
2013
- 2013-01-25 CN CN201310029555.4A patent/CN103118099B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6915307B1 (en) * | 1998-04-15 | 2005-07-05 | Inktomi Corporation | High performance object cache |
CN101567006A (zh) * | 2009-05-25 | 2009-10-28 | 中兴通讯股份有限公司 | 一种数据库系统及分布式sql语句执行计划重用方法 |
CN101741986A (zh) * | 2009-12-31 | 2010-06-16 | 优视科技有限公司 | 一种用于移动通讯设备终端的页面缓存方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103118099A (zh) | 2013-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101459619B (zh) | 一种在网络中对报文传输的处理方法和装置 | |
WO2012092602A3 (en) | Methods and systems for caching data communications over computer networks | |
CN103477609B (zh) | 一种管理数据文件到用户的传输的方法和数据传输管理器 | |
CN105224255B (zh) | 一种存储文件管理方法及装置 | |
WO2013067066A3 (en) | Intelligent caching for security trimming | |
CN102739720A (zh) | 分布式缓存服务器系统及其应用方法、缓存客户端、缓存服务端 | |
WO2009126839A3 (en) | Content delivery in a network | |
CN105635196A (zh) | 一种获取文件数据的方法、系统和应用服务器 | |
CN103746938A (zh) | 一种发送数据包的方法及装置 | |
CN103281382B (zh) | 一种基于p2p的文件传输方法和节点 | |
US20140314139A1 (en) | System and Method for Adaptive Bandwidth Management | |
JP2016525256A (ja) | 冗長データアクセスを提供するための方法および装置 | |
CN103118099B (zh) | 基于散列算法的图形图像缓存方法 | |
CN107707662A (zh) | 一种基于node的分布式缓存方法、装置及存储介质 | |
CN105589664A (zh) | 虚拟存储高速传输方法 | |
CN102523299A (zh) | 基于消息摘要进行内容标识的缓存方法 | |
CN106021126A (zh) | 缓存数据处理方法及服务器、配置设备 | |
CN104954497A (zh) | 一种云存储系统中数据传输方法和系统 | |
CN108173903B (zh) | 自治系统协作缓存策略在ccn中的应用方法 | |
CN106161637A (zh) | 一种云备份方法及装置 | |
CN102209019A (zh) | 一种基于报文净荷的负载均衡方法和负载均衡设备 | |
CN106227679B (zh) | 一种数据缓存替换方法及装置 | |
CN102316021A (zh) | 一种实现交换机聚合口负载分担的方法和交换机 | |
CN100459700C (zh) | 基于协作缓存实现视频点播系统的方法 | |
CN103442091B (zh) | 一种数据传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |