本发明专利技术公开了一种嵌入式平台用户界面加速显示的方法,将用户界面的资源分为静态资源和动态资源,所述方法包括:从客户端的缓存中获取静态资源;向服务器发送请求,检查动态资源是否需要更新,若是,则下载更新的动态资源并存入缓存中,若否,则从缓存中获取动态资源。本发明专利技术通过一种有效的策略尽量减少网络请求的次数,并且尽量缩短页面打开的时间,解决了现有嵌入式环境中,由于硬件资源的限制,导致缓存资源不足的问题,加快了界面显示速度,减少网络请求次数,减少网络流量,从而减缓缓存资源累积。
【技术实现步骤摘要】
本专利技术涉及界面浏览
,尤其涉及一种。
技术介绍
现有的嵌入式浏览器中为了加速界面显示主要采用的方法就是内容的缓存,该方 法最早使用在PC机上,并且也是现在绝大多数PC机浏览器采用的方法,它采用HTTP协议 中的缓存策略,如采用If-Modified-Since (只有当请求的对象在指定的时间之后经过修 改才返回它,否则返回304 "Not Modified”应答),If-Unmodif ied-Since (如果请求的对 象在指定的时间之后没修改过,才执行请求的动作)等请求头域来控制是否需要下载最新 内容,这样只是在内容更新时才需要从网络上下载资源,从而节省网络,达到加快用户界面 显示的效果。这种方式会导致缓存池越来越大,到达一定的时候需要手动清除缓存,并且这种 清除策略也很初级,直接将所有的缓存文件删除,一切重新开始。目前主流的浏览器(IE, Firefox等)都是采用这种策略,在PC机上这一般不存在问题。但是在嵌入式环境中,由于 硬件资源的限制,已有的这种方案的局限性就凸现出来了。
技术实现思路
本专利技术的目的在于针对现有嵌入式环境中,由于硬件资源的限制,导致缓存资源 过快不足的问题,提供一种,加快界面显示,减少网络 请求次数,减少网络流量,从而减缓缓存资源累积。本专利技术提供一种,将用户界面的资源分为静 态资源和动态资源,所述方法包括a)从客户端的缓存中获取静态资源;b)向服务器发送 请求,检查动态资源是否需要更新,若是,则下载更新的动态资源并存入缓存中,若否,则从 缓存中获取动态资源。进一步地,所述静态资源为图片、视频或其它不会改变的资源;所述动态资源为 xml文件、Iua脚本文件或其它服务器会随时更新的资源。进一步地,所述步骤a)中,若无法从缓存中获取静态资源,则向服务器发送请求, 下载相应的静态资源并存入缓存中。进一步地,所述步骤b)中向服务器发送请求的同时还附带发送一 MD5摘要,并由 服务器根据所述MD5摘要来判断动态资源是否需要更新。进一步地,所述方法还包括设置缓存中资源个数或缓存使用空间大小的警戒值, 当缓存中的资源个数或缓存的使用空间大小超过警戒值时,计算缓存中每一个资源的权重 值,并删除权重值最小的若干个资源。进一步地,所述方法还可包括设置缓存中资源个数或缓存使用空间大小的优化 值,当缓存中的资源个数或缓存的使用空间大小超过警戒值时,依次删除权重值最小的资源,直到缓存中的资源个数或缓存的使用空间大小达到优化值。进一步地,所述权重值由每一个资源的最近使用时间、使用次数及初始权重决定, 其中,所述初始权重是在每一个资源存储至缓存中时设置的。进一步地,所述权重值通过公式 lastUseTime*weightl+useCount*weight2+init* weight3计算,其中,lastUseTime表示所述资源的最近使用时间,useCount表示所述资源 的使用次数,init表示所述资源的初始权重,weightl、weight2、weight3分别为系数;所述 资源的初始权重可以由服务器设置。进一步地,采用多线程的方式从服务器下载资源,较佳地采用2-4个线程从服务 器下载资源。进一步地,所述缓存分为一级缓存和二级缓存,所述一级缓存存放在内存中,二级 缓存存放在永久存储介质中;一级缓存用于存储图片、视频或其它加载时间较长的资源,二 级缓存用于存储XML文件、Iua脚本文件或其它文本文件。本专利技术通过一种有效的策略,将页面资源分为静态资源和动态资源,静态资源优 先从缓存中获取,以尽量减少网络请求的次数,并且尽量加快页面打开速度,解决了现有嵌 入式环境中,由于硬件资源的限制,导致缓存资源不足的问题,达到加快界面显示,减少网 络请求次数,减少网络流量,从而减缓缓存资源累积的效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其它附图。图1是本专利技术实施例提供的一种的流程示 意图。图2是图1所示本专利技术实施例步骤S2的具体流程示意图。图3是本专利技术实施例的多线程下载方式的流程示意图。图4是本专利技术实施例在一个应用中的实现流程图。具体实施例方式为使本专利技术的目的、技术方案及优点更加清楚明白,下面参照附图对本专利技术进一 步详细说明。本专利技术提供一种,将用户界面的资源分 为静态资源和动态资源,具体步骤如图1所示,包括步骤Si、从客户端的缓存中获取静态资源;步骤S2、向服务器发送请求,检查动态资源是否需要更新,若是,则下载更新的动 态资源并存入缓存中,若否,则从缓存中获取动态资源。将一个用户界面(页面)的资源分成两部分静态资源,即不会改变的资源,如图 片,视频等,以及动态资源,即服务器随时可能改变的资源,如xml文件,Iua脚本文件等。根据应用的统计数据,可以得出,应用中对于一个特定名字的图片,视频等资源很 少需要更新,于是我们将其设定为静态资源,静态资源优先从缓存中获取,而不需要从服务器重新下载。当然,万一当图片需要修改,则会使用一个新的唯一的名字来命名。这样就可 以避免每次使用If-Modified-Since,If-Unmodified-Since等请求头域去服务器询问这 类资源是否更新。从而大大减少了网络请求次数。对于动态资源,如各类xml文件,Iim脚本文件,在服务器每次向客户端发送数据 时会附带发送一个MD5摘要,即Message Digest Algorithm 5 (消息摘要算法第五版), 这样客户端下次请求同样的数据时会将此MD5摘要同时发送到服务器,服务器通过比较该 MD5值与当前的MD5值是否匹配,来决定是否需要更新资源,如果匹配,则不需要重新发送, 只需返回304的HTTP响应即可,这样就节省了大量带宽资源。具体流程见附图2。进一步地,在嵌入式系统中,可以预先设定一个缓存池中资源个数或缓存池的使 用空间大小的警戒值。当缓存池中的资源个数或缓存池的使用空间大小超过该警戒值时, 通过权重值排序的方式将一部分缓存中的资源删除。具体如下对缓存中储存的每一个资源赋予一个权重值,当缓存池中的资源个数或缓存池的 使用空间大小超过该警戒值时,删除权重值最小的若干个资源,删除的顺序为依次先删除 权重小的,再删除权重较大的资源。引入了 3个参数来计算这个权重值1、最近使用时间Ias切seTime,对应系数 weight 1 ;2、使用次数useCount,对应系数weight2 ;3、初始权重init,对应系数weight3。然后,通过 lastUseTime*weightl+useCount*weight2+init*weight3 计算一个资 源最新的权重值,这样就通过Ias切seTime使得所有的资源都可能被替换出去,useCount 可以使得经常使用的资源权重值更高,init可以让服务器设置。这样对于短时间不会 改变的资源,如页面布局上的一些背景图等可以长时间缓存。公式中三个系数weightl、 weight2,weight3是通过已有的应用,使用统计数据进行分析计算出的数值,其本文档来自技高网...
【技术保护点】
一种嵌入式平台用户界面加速显示的方法,其特征在于,将用户界面的资源分为静态资源和动态资源,所述方法包括:a)从客户端的缓存中获取静态资源;b)向服务器发送请求,检查动态资源是否需要更新,若是,则下载更新的动态资源并存入缓存中,若否,则从缓存中获取动态资源。
【技术特征摘要】
【专利技术属性】
技术研发人员:钱炜铖,周后红,杨茂林,叶宇,李庆瑜,张颖,
申请(专利权)人:上海网达软件有限公司,
类型:发明
国别省市:31[]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。