开发APP怎样充分利用缓存减少对服务器的请求?深圳APP开发公司在本文提醒使用缓存可以减少向服务器的请求数,节省加载时间,所以所有静态资源都要在服务器端设置缓存,并且尽量使用长Cache。长Cache资源的更新可使用不同时间戳来更新。合理设置资源的过期时间,尤其对一些静态的不需要改变的资源,将其缓存过期时间设置得长一些。
1.开发APP如何使用CDN
CDN是一组分布在多个不同地理位置上的Web服务器,当服务器离用户更近一点时,请求的响应时间就能够缩短一点,CDN根据用户到服务器的远近程度或者响应速度来决定响应服务器。在实施地理上分散内容,分布式架构和CDN都是一个方向,但是分布式架构带来的工作量和复杂程度都要比CDN大。CDN一般具有海量的带宽吞吐能力和安全解决方案,能够抵御蛮力的分布式攻击和渗透攻击;我们知道Cookie是跟域名挂钩了,因为CDN域名与网站域名不一样,所以在向CDN请求静态资源的时候就不会带着网站的Cookie等头部信息往返,大大减少了这部分开销。使用CDN的好处不仅如此,在文件缓存上,CDN也带来了不少好处。例如,当多个项目都使用了同一个资源库时,浏览过其中一个应用之后,该资源库的脚本和样式文件就被缓存下来了,再浏览其他应用的时候,使用本地缓存文件即可,因为不同项目使用的库是同一个地址。
2.添加缓存头浏览器
使用缓存来减少HTTP的请求数量,使得Web页面加载更快。对于实时性不高的资源,服务器通过向其添加缓存头部信息,告诉客户端的浏览器可以使用缓存在浏览器本地的组件。缓存头部信息根据HTTP1.0和HTTP1.1分为以下两种。
(1)ExpiresExpires存储的是一个用来控制缓存失效的日期。当浏览器看到响应中有一个Expires头时,就会和相应的组件一起保存到缓存中,只要组件没有过期,浏览器就会使用缓存版本而不会进行任何的HTTP请求。Expires设置的日期格式必须为GMT(格林尼治标准时间),例如Expires:FriJan23201615:48:31GMT+0800。这种方式只能使用一个特定时间,即截止时间。
(2)Cache-Control例如:Cache-Control:max-age=36000000。max-age是以秒为单位的,表示可以缓存多久。在HTTP1.0的时候,如果要取消缓存可以通过Pragma:no-cache头来告诉浏览器;在HTTP1.1的时候,通过Cache-Control:no-cache。例如,PHP可以在任何Web服务器(UNIX或Windows)或Apache模块上作为CGI使用,可以通过Header()函数设置HTTP头信息。例如,通过以下PHP代码创建Cache-Control头,并将其过期时间设置为3天:
01 <? php 02 Header(" Cache- Control: must- revalidate"); 03 04 $ offset = 60 * 60 * 24 * 3; 05 $ ExpStr = "Expires:". gmdate(" D, d M Y H: i: s", time() + $ offset)." GMT"; 06 Header($ ExpStr); 07 ?>
充分利用缓存,可以总结为如下几个方面:缓存一切可缓存的资源。使用长Cache。使用外联式引用CSS、JavaScript。好了,APP开发公司本文关于“开发APP怎样充分利用缓存减少对服务器的请求?”的相关APP制作开发知识本文就分享到这里。谢谢关注,博纳网络编辑整理。