CN108055302B - 一种图片缓存处理方法、***和服务器 - Google Patents

一种图片缓存处理方法、***和服务器 Download PDF

Info

Publication number
CN108055302B
CN108055302B CN201711270987.9A CN201711270987A CN108055302B CN 108055302 B CN108055302 B CN 108055302B CN 201711270987 A CN201711270987 A CN 201711270987A CN 108055302 B CN108055302 B CN 108055302B
Authority
CN
China
Prior art keywords
picture
file
cache
processing
url
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
CN201711270987.9A
Other languages
English (en)
Other versions
CN108055302A (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.)
Jjworld Beijing Network Technology Co ltd
Original Assignee
Jjworld Beijing Network 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 Jjworld Beijing Network Technology Co ltd filed Critical Jjworld Beijing Network Technology Co ltd
Priority to CN201711270987.9A priority Critical patent/CN108055302B/zh
Publication of CN108055302A publication Critical patent/CN108055302A/zh
Application granted granted Critical
Publication of CN108055302B publication Critical patent/CN108055302B/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/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • 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/565Conversion or adaptation of application format or content
    • 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
    • H04L67/5683Storage of data provided by user terminals, i.e. reverse caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种图片缓存处理方法、***和服务器,所述图片缓存处理方法包括:S101:前端代理服务器接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL;S102:前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器;S103:图片缓存处理服务器根据解析后的图片请求URL进行相应的处理。由此,根据本发明的实施例,在提高数据缓存利用率、缓存命中率的同时提高单服务器的吞吐性能和响应速度。

Description

一种图片缓存处理方法、***和服务器
技术领域
本发明涉及计算机及互联网技术领域,具体涉及一种图片处理技术,特别是一种图片缓存处理方法、***和服务器。
背景技术
当前的网站中,处于显示效果和用户喜爱度的考虑,页面中存在着大量的图片,因此,图片文件的存储和调用有着举足轻重的地位。
申请号为CN201510288889.2的发明专利申请中公开了一种图片处理方法、***和图片处理服务器,所述方法包括步骤如下:第一服务器接收到客户端发送的图片处理请求全球资源定位符URL后,根据预设规则解析所述图片处理请求URL,获得原图URL;所述第一服务器计算所述原图URL的哈希hash值,根据所述hash值确定第二服务器;所述第二服务器根据解析后的图片处理请求URL进行相应的处理。从而,使得基于同一张原图的所有处理请求都会分配到同一台处理服务器上,并由同一台图片处理服务器统一对同一图片的不同处理请求进行处理,并且针对同一原图做处理后获得的图片都会缓存在同一原图处理服务器上,防止同一图片重复存储,节省了存储空间,并提高了缓存的命中率,提升了***的吞吐性能和相应速度。
该技术方案没有考虑缓存的分级存储和缓存过期处理问题,从而使得图片处理效率低下、磁盘空间资源消耗巨大、对图片处理***的硬件要求过高、处理成本较高。
发明内容
本发明的目的在于提出一种高效率、低成本的图片缓存处理方法、***和服务器。
为达此目的,本发明采用以下技术方案:
一种图片缓存处理方法,包括:
S101:前端代理服务器接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL;
S102:前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器;
S103:图片缓存处理服务器根据解析后的图片请求URL进行相应的处理。
作为优选实施例,步骤S101中前端代理服务器接收到客户端发送的图片处理请求URL,根据预设规则解析图片处理请求URL,获取原图URL的具体流程如下:
S201:前端代理服务器接收到客户端发送的图片请求URL地址;
S202:前端代理根据预设规则解析URL,获取原图URL和图片处理参数;其中,图片请求URL由原始图片和图片输出尺寸组成,根据预先设定的规则解析图片处理请求URL,将图片请求URL解析为原图URL加参数的形式。
作为优选实施例,步骤S102中前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器的具体流程如下:
S203:计算S202中获取到的原图URL的哈希值,根据哈希值确定缓存服务器地址;
S204:将S202中的得到的解析后URL请求转发给S203中确定的缓存服务器地址。
作为优选实施例,步骤S103中,缓存处理服务器接收到前端代理服务器转发的接收的图片处理请求URL,其处理流程如下:
S301:在缓存处理服务器一级缓存中检索图片文件;
S302:判断是否存在目标图片文件;
S303:如果存在目标图片文件,修改目标图片的访问时间为原访问时间增加一秒并跳转到S313;
S304:如果不存在目标图片时,图片缓存处理服务器在二级处理缓存中检索目标图片;
S305:判断是否存在目标图片文件;
S306:如果存在目标图片文件,将目标图片文件移动到一级缓存;跳转到S313;
S307:如果不存在目标图片,在原图缓存中检索原始图片;
S308:判断是否存在目标原始图片文件;
S309:如果存在原始图片,修改原始图片缓存文件的访问时间为原访问时间增加一秒,跳转到S311;
S310:如果不存在原始图片缓存文件,则从分布式存储***中下载原图并缓存到原图缓存中;
S311:根据图片处理请求URL处理原图;
S312:将处理后的图片缓存到一级处理缓存;
S313:将处理后的图片返回给前端代理服务器。
作为优选实施,所述图片缓存处理方法,进一步包括:缓存过期处理步骤,定期检查缓存文件,并根据所述缓存文件的被访问频次确定所述缓存文件是否属于过期缓存文件,如果判定为过期缓存文件,则进行相应的清理操作。
作为优选实施例,所述相应的清理操作包括:将过期缓存文件降级处理或删除过期缓存文件。
一种图片缓存处理***,包括:前端代理模块,接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL,并计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务模块;
图片缓存处理服务模块,根据解析后的图片请求URL进行相应的处理。
作为优选实施例,所述前端代理模块接收到客户端发送的图片处理请求URL,根据预设规则解析图片处理请求URL,获取原图URL的具体流程如下:前端代理模块接收到客户端发送的图片请求URL地址;前端代理根据预设规则解析URL,获取原图URL和图片处理参数;其中,图片请求URL由原始图片和图片输出尺寸组成,根据预先设定的规则解析图片处理请求URL,将图片请求URL解析为原图URL加参数的形式。
作为优选实施例,所述图片缓存处理***的图片缓存处理服务模块进一步包括:缓存过期处理模块,定期检查缓存文件,并根据所述缓存文件的被访问频次确定所述缓存文件是否属于过期缓存文件,如果判定为过期缓存文件,则进行相应的清理操作。
一种图片处理服务器,包括:前端代理服务器,用于接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL;并计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器;图片缓存处理服务器根据解析后的图片请求URL进行相应的处理;其中,所述图片缓存处理服务器进一步包括缓存过期处理服务模块,其用于定期检查缓存文件,并根据所述缓存文件的被访问频次确定所述缓存文件是否属于过期缓存文件,如果判定为过期缓存文件,则进行相应的清理操作。
本发明的有益效果是:提高数据缓存利用率、缓存命中率的同时提高单服务器的吞吐性能和响应速度,通过增加缓存级别、可实现缓存的分层存储和缓存的过期处理机制来保障整个***的高效、正常运行;缓存分层存储可以实现高速磁盘和低速磁盘的搭配使用,发挥各自的优点;缓存过期处理机制,同时兼顾效率,又避免过期热点数据,保持***的高响应速度;图片压缩比判定,通过算法计算一张图片的合理的压缩比,通过对比该图片的实际压缩比来判定该图片的压缩比是否合理并自动处理压缩比不合理的图片文件,该机制可保障本地存储空间、网络带宽的合理利用,避免了因压缩比过小给整个***、甚至整个机房的网络带宽造成影响。缓存分级存储可以有效地结合高速磁盘的速度优势和低速磁盘的容量优势,提高***处理性能;缓存文件过期自动处理机制可保障***磁盘空间的有效利用和***的正常运行。
附图说明
图1是本发明所述的图片缓存处理方法流程图;
图2是本发明所述的方法的步骤S101和S102的具体方法流程图;
图3是缓存处理服务器接收到前端代理服务器转发的接收的图片处理请求URL的具体处理流程图;
图4是根据图片的处理请求URL处理原图的具体流程图;
图5是图片缓存处理服务器的一级处理缓存文件降级处理流程图;
图6是图片缓存处理服务器的二级处理缓存文件清理处理流程图;
图7是图片缓存处理服务器的原图缓存文件清理处理流程图。
具体实施方式
缩略语和关键术语定义
URL:统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
noatime:是Linux/*nix下文件***的一个磁盘挂载选项,表示在读文件时不去更改文件的访问时间属性,而缺省时每次读文件,都要更新这个文件的访问属性。
Hash:一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射),通过散列算法,变换成固定长度的输出,该输出就是散列值。
本发明所述的图片缓存处理***,包括:前端代理模块、图片缓存模块,其中所述图片缓存模块还包括有缓存过期处理模块;
所述前端代理模块负责接收用户请求,并根据原图URL确定并转发给图片缓存模块;
所述图片缓存模块在接收到前端代理模块转发过来的请求后,开始进行处理,包括如下步骤如下:
S1、在图片一级缓存中检索缓存文件,如果存在缓存文件,则将其返回给前端代理;
S2、如果不存在缓存文件,则继续在二级缓存中检索,如果在二级缓存中存在缓存文件,则将此缓存文件移动到一级缓存,并返回给前端代理;
S3、如果在二级缓存中不存在此缓存文件,则在原图缓存检索该请求文件的原始图片文件,如果不存在原始图片文件,则根据原始图片URL从对象存储***中下载原始图片并缓存到原始图片缓存中;
S4、从原始图片缓存中获取原始图片文件,按照请求URL中定义的图片大小需求,将图片处理为所需要的大小,将处理完成后的图片文件缓存到一级图片缓存中并返回给前端代理模块。
本***通过noatime选项挂载文件***,当缓存文件被访问后,触发修改缓存图片文件的访问时间为原访问时间增加一秒,通过此方法来记录缓存文件一段时间内被访问的次数。
过期处理模块,定期检查一级缓存文件,计算图片文件的访问时间与状态改变时间的时间差(秒),该时间差为该缓存文件在此时间段内的访问次数,比较此缓存文件的访问次数与预设活跃文件降级访问次数,当访问次数小于预设值时,将该缓存文件移动到二级缓存中,否则更新该缓存文件的访问时间与状态改变时间为当前***时间;定期检查二级缓存文件,计算图片文件的访问时间与状态改变时间的时间差(秒),该时间差为该缓存文件在此时间段内的访问次数,比较此缓存文件的访问次数与预设活跃文件清理访问次数,当访问次数小于预设值时,删除该缓存文件,回收磁盘空间,否则更新该缓存文件的访问时间与状态改变时间为当前***时间;定期检查原图缓存文件,计算图片文件的访问时间与状态改变时间的时间差(秒),该时间差为该缓存文件在此时间段内的访问次数,比较此缓存文件的访问次数与预设原图文件清理访问次数,当访问次数小于预设值时,删除该缓存文件,回收磁盘空间,否则更新该原图缓存文件的访问时间与状态改变时间为当前***时间。
具体实施方式:
为了实现一个高效的图片响应、处理,本发明所述的图片缓存处理方法,具体如下(图1):
S101:前端代理服务器接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL;
S102:前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器;
S103:图片缓存处理服务器根据解析后的图片请求URL进行相应的处理。
进一步而言,步骤S101和S102中:前端代理服务器接收到客户端发送的图片处理请求URL,根据预设规则解析图片处理请求URL,获取原图URL,前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器的具体流程如下(图2):
S201:前端代理服务器接收到客户端发送的图片请求URL地址;
S202:前端代理根据预设规则解析URL,获取原图URL和图片处理参数;图片请求处理URL由原始图片和图片输出尺寸组成,根据预先设定的规则解析图片处理请求URL,将图片请求URL解析为原图URL加参数的形式。
假设请求地址和解析后的地址如下:
用户请求URL:http://image.xx.cn/20170901/logo.jpg/200*100;
解析后的URL:http://image.xx.cn/do?img=/20170901/logo.jpg&w=200&h=100;
得到原图URL:/20170901/logo.jpg和处理参数,图片宽度:200像素,高度:100像素。
S203:计算S202中获取到的原图URL的哈希值,根据哈希值确定缓存服务器地址;
S204:将S202中的得到的解析后URL请求转发给S203中确定的缓存服务器地址。
缓存处理服务器接收到前端代理服务器转发的接收的图片处理请求URL,其处理流程如下(图3):
S301:在缓存处理服务器一级缓存中检索图片文件,假定图片请求URL为:20170901/logo.jpg/200*100,那么在缓存目录下检索路径文件名为:20170901/logo.jpg/200*100的缓存文件,假定缓存图片文件的初始访问时间和状态改变时间戳均为:1510215474,该缓存文件未被访问过;原图路径、文件名为:20170901/logo.jpg;假定原图文件的访问时间和状态改变时间戳均为:1510215470;
S302:判断是否存在目标图片文件;
S303:如果存在目标图片文件,修改目标图片的访问时间为原访问时间增加一秒,及将该缓存文件的访问时间戳由1510215474修改为1510215475,跳转到S313;这里需要说明的是每次访问上述时间戳修改增加一秒的好处在于可以根据前后时间戳的差值判断所述目标图片文件被访问的次数;
S304:如果不存在目标图片时,图片缓存处理服务器在二级处理缓存中检索目标图片,在二级缓存中检索路径、文件名为:20170901/logo.jpg/200*100的缓存文件;
S305:判断是否存在目标图片文件;
S306:如果存在目标图片文件,将目标图片文件移动到一级缓存;跳转到S313;
S307:如果不存在目标图片,在原图缓存中检索路径、文件名为:20170901/logo.jpg的原始图片文件;
S308:判断是否存在目标原始图片文件;
S309:如果存在原始图片,修改原始图片缓存文件的访问时间为原访问时间增加一秒,跳转到S311,例如:将该原始图片的访问时间戳由1510215470修改为1510215471;
S310:如果不存在原始图片缓存文件,则从分布式存储***中下载原图并缓存到原图缓存中;
S311:根据图片处理请求URL处理原图(具体处理流程见图4);
S312:将处理后的图片缓存到一级处理缓存;
S313:将处理后的图片返回给前端代理服务器。
上述步骤S311中,根据图片的处理请求URL处理原图的具体流程为(图4):
S401:获取图片的处理参数,例如:图片高度、宽度值等;
假设图片请求URL为:20170901/logo.jpg/200*100,通过该URL得到图片的处理请求为:宽度:200像素,高度:100像素;
S402:获取原图的高度、宽度和图片占用存储空间大小;
S403:比较原图尺寸和处理参数尺寸;
S404:判断原始图片的尺寸是否大于要求输出的尺寸;如果原图尺寸小于或等于处理参数要求的输出尺寸,跳转到S409;
S405:如果原图尺寸大于处理参数要求的输出尺寸,按照处理参数调整图片大小;
S406:判断调整后的图片像素与图片大小的比值,以下简称为压缩比;图片压缩比简化计算公式:压缩比=(像素宽度×像素高度)/图片大小(图片占用存储空间的大小)。
S407:参考值的设定可根据实际情况,一般而言,互联网显示图片不需要太高的精度,由于图片大小与压缩比成正比的关系——图片越大、jpg格式的压缩比也越大,对当前图片的压缩比的计算可使用如下公式计算:
压缩比参考值计算公式:压缩比参考值=(像素宽度×像素高度)^系数-常数
不同的系数值可以计算出不同压缩比参考值,通过对比实际图片,这里假设选取的系数参考值为:0.155,常数选取为:5
假设输出尺寸为,宽200像素,高100像素,图片存储空间大小为:40960字节:
压缩比=(200×100)/40960≈0.488
压缩比参考值=(200×100)^0.155-5≈0.19
S408:当计算获取的图片的压缩比大于该图片的压缩比参考值,则判断该图片的压缩比正常;
S409:如果小于于参考值,按照设定压缩比、再次压缩该图片文件,图片压缩可使用常用开源压缩算法;
S410:返回处理后的图片。
图片缓存处理服务器的一级处理缓存文件降级处理流程(见图5):
根据预设非活跃文件访问次数对一级处理缓存中的文件进行降级处理,保障一级缓存存储空间的合理高效使用,具体流程如下:
S501:通过图片缓存处理服务器上定时任务,遍历一级缓存内的缓存文件;
S502:计算当前***时间与缓存文件的状态改变时间的时间差;
S503:比较S502中计算的时间差与预设缓存文件检查间隔时长:
如果S502中计算的时间差大于检查间隔时长,跳转至S504;
如果S502中计算的时间差不大于检查间隔时长,跳转至S508;
S504:计算缓存文件的访问时间与状态改变时间的时间差(秒);
S505:比较S504中计算缓存文件的访问时间与状态改变时间的时间差(秒)与预设活跃文件降级访问次数:
如果S504中计算的文件访问时间与状态改变时间的时间差(秒)小于预设活跃文件降级访问次数,跳转至S506;
如果S504中计算的文件访问时间与状态改变时间的时间差(秒)不小于预设活跃文件降级访问次数,跳转至S508;
S506:将该缓存文件移动到二级处理缓存;
S507:更新该缓存文件的状态时间和访问时间为当前***时间;
S508:结束该文件处理,进行下一个缓存文件处理。
图片缓存处理服务器的二级处理缓存文件清理处理流程(见图6):
根据预设非活跃文件访问次数对二级处理缓存中的图片文件进行删除处理,保障二级缓存存储空间的合理使用,具体流程如下:
S601:通过图片缓存处理服务器上定时任务,遍历二级缓存内的文件;
S602:计算当前***时间与图片文件的状态改变时间的时间差;
S603:比较S602中计算的时间差与预设缓存文件检查间隔时长,如果S602中计算的时间差大于检查间隔时长,跳转至S604;如果S602中计算的时间差不大于检查间隔时长,跳转至S608;
S604:计算缓存文件的访问时间与状态改变时间的时间差(秒):
如果S604中计算的文件访问时间与状态改变时间的时间差(秒)小于预设活跃文件清理访问次数,跳转至S606;如果S604中计算的文件访问时间与状态改变时间的时间差(秒)不小于预设活跃文件清理访问次数,跳转至S607;
S606:删除该缓存文件并转到S608;
S607:更新缓存文件的状态时间和访问时间为当前***时间,跳转至S608;
S608:结束该文件处理,进行下一个缓存文件处理。
图片缓存处理服务器的原图缓存文件清理处理流程(见图7):
根据预设非活跃原图文件访问次数,对原图缓存中的文件进行删除处理,保障原图缓存存储空间的合理使用,具体流程如下:
S701:通过图片缓存处理服务器上定时任务,遍历原图缓存内的图片文件;
S702:计算当前***时间与图片文件的状态改变时间的时间差;
S703:比较S702中计算的时间差与预设缓存文件检查间隔时长:如果S702中计算的时间差大于检查间隔时长,跳转至S704;如果S702中计算的时间差不大于检查间隔时长,跳转至S708;
S704:计算图片文件的访问时间与状态改变时间的时间差(秒);
S705:比较图片文件的访问时间与状态改变时间的时间差(秒)与预设非活跃原图文件访问次数时;
如果S704中计算的时间差值大于预设非活跃原图文件访问次数,跳转至S706;
如果S704中计算的时间差值不大于预设非活跃原图文件访问次数,跳转至S707;
S706:删除该缓存文件,跳转至S708;
S707:更新缓存文件的状态时间和访问时间为当前***时间,跳转至S708;
S708:结束该文件处理,进行下一个缓存文件处理。
本发明的有益效果是:提高数据缓存利用率、缓存命中率的同时提高单服务器的吞吐性能和响应速度,通过增加缓存级别、可实现缓存的分层存储和缓存的过期处理机制来保障整个***的高效、正常运行;缓存分层存储可以实现高速磁盘和低速磁盘的搭配使用,发挥各自的优点;缓存过期处理机制,同时兼顾效率,又避免过期热点数据占用磁盘空间,保持***的高响应速度;图片压缩比判定,通过算法计算一张图片的合理的压缩比,对比该图片的实际压缩比来判定该图片的压缩比是否合理并自动处理压缩比不合理的图片文件,该机制可保障本地存储空间、网络带宽的合理利用,避免了因压缩比过小给整个***、甚至整个机房的网络带宽造成影响。缓存分级存储可以有效地结合高速磁盘的速度优势和低速磁盘的空间优势,提高***处理性能;缓存文件过期自动处理机制可保障***磁盘空间的有效利用和***的正常运行。
虽然已参照几个典型实施例描述了本发明,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本发明能够以多种形式具体实施而不脱离发明的精神或实质,所以应当理解,上述实施例不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。

Claims (8)

1.一种图片缓存处理方法,包括:
S101:前端代理服务器接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL;
S102:前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器;
S103:图片缓存处理服务器根据解析后的图片请求URL进行相应的处理;
所述图片缓存处理方法,进一步包括:缓存过期处理步骤,定期检查缓存文件,并根据所述缓存文件的被访问频次确定所述缓存文件是否属于过期缓存文件,如果判定为过期缓存文件,则进行相应的清理操作;
所述缓存过期处理步骤包括:
定期检查一级缓存文件,计算图片文件的访问时间与状态改变时间的时间差,所述时间差为所述一级缓存文件在此时间段内的访问次数,比较所述一级缓存文件的访问次数与预设活跃文件降级访问次数,当访问次数小于预设值时,将所述一级缓存文件移动到二级缓存中,否则更新所述图片文件的访问时间与状态改变时间为当前***时间;定期检查二级缓存文件,计算所述图片文件的访问时间与状态改变时间的时间差,所述时间差为所述二级缓存文件在此时间段内的访问次数,比较所述二级缓存文件的访问次数与预设活跃文件清理访问次数,当访问次数小于预设值时,删除所述二级缓存文件,回收磁盘空间,否则更新所述二级缓存文件的访问时间与状态改变时间为当前***时间。
2.如权利要求1所述的方法,步骤S101中前端代理服务器接收到客户端发送的图片处理请求URL,根据预设规则解析图片处理请求URL,获取原图URL的具体流程如下:
S201:前端代理服务器接收到客户端发送的图片请求URL地址;
S202:前端代理根据预设规则解析URL,获取原图URL和图片处理参数;其中,图片请求URL由原始图片和图片输出尺寸组成,根据预先设定的规则解析图片处理请求URL,将图片请求URL解析为原图URL加参数的形式。
3.如权利要求2所述的方法,步骤S102中前端代理服务器计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器的具体流程如下:
S203:计算S202中获取到的原图URL的哈希值,根据哈希值确定缓存服务器地址;
S204:将S202中的得到的解析后URL请求转发给S203中确定的缓存服务器地址。
4.如权利要求1所述的方法,步骤S103中,缓存处理服务器接收到前端代理服务器转发的接收的图片处理请求URL,其处理流程如下:
S301:在缓存处理服务器一级缓存中检索图片文件;
S302:判断是否存在目标图片文件;
S303:如果存在目标图片文件,修改目标图片的访问时间为原访问时间增加一秒并跳转到S313;
S304:如果不存在目标图片时,图片缓存处理服务器在二级处理缓存中检索目标图片;
S305:判断是否存在目标图片文件;
S306:如果存在目标图片文件,将目标图片文件移动到一级缓存;跳转到S313;
S307:如果不存在目标图片,在原图缓存中检索原始图片;
S308:判断是否存在目标原始图片文件;
S309:如果存在原始图片,修改原始图片缓存文件的访问时间为原访问时间增加一秒,跳转到S311;
S310:如果不存在原始图片缓存文件,则从分布式存储***中下载原图并缓存到原图缓存中;
S311:根据图片处理请求URL处理原图;
S312:将处理后的图片缓存到一级处理缓存;
S313:将处理后的图片返回给前端代理服务器。
5.如权利要求1所述的方法,所述相应的清理操作包括:将过期缓存文件降级处理或删除过期缓存文件。
6.一种图片缓存处理***,包括:前端代理模块,接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL,并计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务模块;
图片缓存处理服务模块,根据解析后的图片请求URL进行相应的处理;
所述图片缓存处理***的图片缓存处理服务模块进一步包括:缓存过期处理模块,定期检查缓存文件,并根据所述缓存文件的被访问频次确定所述缓存文件是否属于过期缓存文件,如果判定为过期缓存文件,则进行相应的清理操作;
所述图片缓存处理服务模块具体用于:
定期检查一级缓存文件,计算图片文件的访问时间与状态改变时间的时间差,所述时间差为所述一级缓存文件在此时间段内的访问次数,比较所述一级缓存文件的访问次数与预设活跃文件降级访问次数,当访问次数小于预设值时,将所述一级缓存文件移动到二级缓存中,否则更新所述图片文件的访问时间与状态改变时间为当前***时间;定期检查二级缓存文件,计算所述图片文件的访问时间与状态改变时间的时间差,所述时间差为所述二级缓存文件在此时间段内的访问次数,比较所述二级缓存文件的访问次数与预设活跃文件清理访问次数,当访问次数小于预设值时,删除所述二级缓存文件,回收磁盘空间,否则更新所述二级缓存文件的访问时间与状态改变时间为当前***时间。
7.如权利要求6所述的***,所述前端代理模块接收到客户端发送的图片处理请求URL,根据预设规则解析图片处理请求URL,获取原图URL的具体流程如下:前端代理模块接收到客户端发送的图片请求URL地址;前端代理根据预设规则解析URL,获取原图URL和图片处理参数;其中,图片请求URL由原始图片和图片输出尺寸组成,根据预先设定的规则解析图片处理请求URL,将图片请求URL解析为原图URL加参数的形式。
8.一种图片处理服务器,包括:前端代理服务器,用于接收客户端发送的图片处理请求URL后,根据预先定义的规则解析请求URL,获取原图URL;并计算原图URL的哈希值,根据所得哈希值确定图片缓存处理服务器;图片缓存处理服务器根据解析后的图片请求URL进行相应的处理;其中,所述图片缓存处理服务器进一步包括缓存过期处理服务模块,其用于定期检查缓存文件,并根据所述缓存文件的被访问频次确定所述缓存文件是否属于过期缓存文件,如果判定为过期缓存文件,则进行相应的清理操作;
所述图片缓存处理服务器具体用于:
定期检查一级缓存文件,计算图片文件的访问时间与状态改变时间的时间差,所述时间差为所述一级缓存文件在此时间段内的访问次数,比较所述一级缓存文件的访问次数与预设活跃文件降级访问次数,当访问次数小于预设值时,将所述一级缓存文件移动到二级缓存中,否则更新所述图片文件的访问时间与状态改变时间为当前***时间;定期检查二级缓存文件,计算所述图片文件的访问时间与状态改变时间的时间差,所述时间差为所述二级缓存文件在此时间段内的访问次数,比较所述二级缓存文件的访问次数与预设活跃文件清理访问次数,当访问次数小于预设值时,删除所述二级缓存文件,回收磁盘空间,否则更新所述二级缓存文件的访问时间与状态改变时间为当前***时间。
CN201711270987.9A 2017-12-05 2017-12-05 一种图片缓存处理方法、***和服务器 Active CN108055302B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711270987.9A CN108055302B (zh) 2017-12-05 2017-12-05 一种图片缓存处理方法、***和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711270987.9A CN108055302B (zh) 2017-12-05 2017-12-05 一种图片缓存处理方法、***和服务器

Publications (2)

Publication Number Publication Date
CN108055302A CN108055302A (zh) 2018-05-18
CN108055302B true CN108055302B (zh) 2020-10-20

Family

ID=62122482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711270987.9A Active CN108055302B (zh) 2017-12-05 2017-12-05 一种图片缓存处理方法、***和服务器

Country Status (1)

Country Link
CN (1) CN108055302B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110069419A (zh) * 2018-09-04 2019-07-30 中国平安人寿保险股份有限公司 多级缓存***及其访问控制方法、设备和存储介质
CN111104528B (zh) * 2018-10-29 2023-05-16 浙江宇视科技有限公司 图片获取方法、装置及客户端
CN109657167B (zh) * 2018-11-29 2023-11-21 彩讯科技股份有限公司 数据采集方法、装置、服务器及存储介质
CN109669737B (zh) * 2018-12-19 2023-04-18 百度在线网络技术(北京)有限公司 应用处理方法、装置、设备和介质
CN109766462B (zh) * 2018-12-27 2020-12-15 山东信通电子股份有限公司 输电线路监控***中的图像文件读取方法、装置及***
CN110032671B (zh) * 2019-04-12 2021-06-18 北京百度网讯科技有限公司 用户轨迹信息的处理方法、装置、计算机设备及存储介质
CN110311980B (zh) * 2019-07-03 2022-01-25 创新先进技术有限公司 一种数据下载方法及装置
CN112788152A (zh) * 2021-01-28 2021-05-11 重庆周游科技有限公司 一种节省硬盘空间的图片上传方法
CN113420245B (zh) * 2021-05-11 2023-10-27 上海幻电信息科技有限公司 页面显示方法及***
CN115878676B (zh) * 2023-02-08 2023-05-05 成都数联云算科技有限公司 一种预览文件的方法、装置、设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102387169A (zh) * 2010-08-26 2012-03-21 阿里巴巴集团控股有限公司 分布式缓存的对象删除方法、***及删除服务器
CN102624689A (zh) * 2011-11-28 2012-08-01 苏州奇可思信息科技有限公司 服务器本地文件缓存优先的客户端代理上网方法
CN104239435A (zh) * 2014-08-29 2014-12-24 四川长虹电器股份有限公司 一种基于图片缩略处理的分布式图片缓存方法
CN104954448A (zh) * 2015-05-29 2015-09-30 努比亚技术有限公司 图片处理方法、***和服务器
JP2016012311A (ja) * 2014-06-30 2016-01-21 日本信号株式会社 物体検出装置
CN105701178A (zh) * 2016-01-05 2016-06-22 北京汇商融通信息技术有限公司 分布式图片存储***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102387169A (zh) * 2010-08-26 2012-03-21 阿里巴巴集团控股有限公司 分布式缓存的对象删除方法、***及删除服务器
CN102624689A (zh) * 2011-11-28 2012-08-01 苏州奇可思信息科技有限公司 服务器本地文件缓存优先的客户端代理上网方法
JP2016012311A (ja) * 2014-06-30 2016-01-21 日本信号株式会社 物体検出装置
CN104239435A (zh) * 2014-08-29 2014-12-24 四川长虹电器股份有限公司 一种基于图片缩略处理的分布式图片缓存方法
CN104954448A (zh) * 2015-05-29 2015-09-30 努比亚技术有限公司 图片处理方法、***和服务器
CN105701178A (zh) * 2016-01-05 2016-06-22 北京汇商融通信息技术有限公司 分布式图片存储***

Also Published As

Publication number Publication date
CN108055302A (zh) 2018-05-18

Similar Documents

Publication Publication Date Title
CN108055302B (zh) 一种图片缓存处理方法、***和服务器
US11032388B2 (en) Methods for prerendering and methods for managing and configuring prerendering operations
US9015269B2 (en) Methods and systems for notifying a server with cache information and for serving resources based on it
EP3399434A1 (en) Short link processing method, device and server
JP5592489B2 (ja) キャッシング情報のシステム及び方法
CN110401724B (zh) 文件管理方法、文件传输协议服务器及存储介质
US20130007260A1 (en) Access to network content
US9769285B2 (en) Access to network content
CN103281397A (zh) 一种基于时间戳和访问密度的数据缓存方法及***
CN111221469B (zh) 同步缓存数据的方法、装置和***
CN102307234A (zh) 基于移动终端的资源检索方法
WO2014161261A1 (zh) 数据的存储方法及装置
CN111597213A (zh) 一种缓存方法、软件服务器及存储介质
CN106649313A (zh) 用于处理缓存数据的方法和设备
JP5322019B2 (ja) 関連する情報を事前にキャッシュする予測型キャッシュ方法、そのシステム及びそのプログラム
JP5272428B2 (ja) アクセス頻度の高い情報を事前にキャッシュする予測型キャッシュ方法、そのシステム及びそのプログラム
CN110750566A (zh) 数据处理方法、装置、缓存***及缓存管理平台
JP5365830B2 (ja) 利用される可能性の高い情報をキャッシュする予測型キャッシュ方法、そのシステム及びそのプログラム
CN114925304A (zh) 一种信息访问方法、装置和***
CN113342277B (zh) 数据处理方法及装置
JP5428918B2 (ja) 文書配信装置
CN116069529B (zh) 一种动态缓存方法、装置、电子设备及计算机可读介质
CN117688259A (zh) 基于请求拦截的web页面加载方法、装置和存储介质
JP2009187435A (ja) 省資源端末でのデータキャッシュシステム、その方法及びそのプログラム
JP2001155029A (ja) 放送型情報システム、放送情報キャッシング方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体

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