转自: http://www.yeeyan.org/articles/view/mouse4x/17150 当你建立好一个WEB服务后,通常有两个类型的缓存需要配置: 设置网站有更新的时候html资源马上过期,以便正在浏览的用户可以很快地得到更新. 设置所有其它资源(例如图片,CSS,javascript脚本)在一定时间后过期. 这个缓存方案涵盖Two Simple Rules for HTTP Caching文章中提到关于如何处理更新的一些思想. 现在HttpWatch 6.0支持Firefo…
浏览器缓存分为两种, 强制缓存  与  协商缓存, https://www.pass4lead.com/300-209.htmlhttps://www.pass4lead.com/300-320.html     强制缓存有  在 header 中的 expires 设置一个过期时间,如设置则未过期文件将不请求服务器直接使用缓存,这个的缺点是服务器时间与客户端时间可能不一直.    另一种是 cache-control,通过设置 cache-control 的 max-age 设置相对过期时间,…
TOC 背景 浏览器的总流程图 一步一步说缓存 朴素的静态服务器 设置缓存超时时间 html5 Application Cache Last-Modified/If-Modified-Since Etag/If-None-Match 什么是Etag 为什么有了Last-Modified还要Etag Etag 的实现 迷之浏览器 总结 背景 在对页面的性能优化时,特别是移动端的优化,缓存是非常重要的一环. 浏览器缓存机制设置众多:html5 appcache,Expires,Cache-contr…
在阅读本文前推荐你先阅读我的前两篇文章< 扼杀 304,Cache-Control: immutable>和<关于缓存和 Chrome 的“新版刷新”>:下面要说的两个问题是在淘宝(包括天猫等等)任意主流页面中都存在的,所以你可以随便打开一个页面进行测试:这两个问题我去年在微博上都简单提到过,这里做一下梳理总结. 一. 部分图片文件始终 304,无法直接读取缓存 淘宝网站上什么类型的请求最多?当然是图片了.拿淘宝首页举例,在 Chrome 的新标签页中先打开开发者工具,再打开淘宝首…
概述 发起一个http请求的过程就是建立一个socket通信的过程. 我们可以模仿浏览器发起http请求,譬如用httpclient工具包,curl命令等方式. curl "http://www.baidu.com"  返回页面数据 curl -I "http://www.baidu.com" -I查看http响应头的信息 curl -I "http://www.baidu.com" -H "Cookie=......; Accept-…
第一部分: 浏览器缓存如何控制?   最近在做网站,但是不知道缓存是什么东西怎么能行! 如何实现HTTP缓存呢? 下面我们来一步一步的探寻实现机制把. 方案一: 无缓存   说明: 浏览器向服务器请求资源m.png, 然后服务器响应请求--找到对应的m.png后发送给浏览器. 之后,浏览器再次向服务器请求m.png, 服务器又发回了同样的一张图片....循环往复..... 优点: 浏览器请求,服务器响应,思路清楚简单容易实现. 缺点 : 每次我都请求同样的资源时, 服务器也在不断地响应,这是非常…
一 TCP网络协议 1 建立TCP连接:三次握手原则 客户端通过向服务器端发送一个SYN来创建一个主动打开,作为三次握手的一部分.客户端把这段连接的序号设定为随机数 A. 服务器端应当为一个合法的SYN回送一个SYN/ACK.ACK 的确认码应为 A+1,SYN/ACK 包本身又有一个随机序号 B. 最后,客户端再发送一个ACK.当服务端受到这个ACK的时候,就完成了三路握手,并进入了连接创建状态.此时包序号被设定为收到的确认号 A+1,而响应则为 B+1. 2 断开连接: 四次挥手原则 客户端…
ASP.NET Boilerplate 学习   1.在http://www.aspnetboilerplate.com/Templates 网站下载ABP模版 2.解压后打开解决方案,解决方案目录: 3.在AbpTest.Web.Host项目的appsettings.json中配置数据库连接字符串 新建名为AbpTestDb的空白数据库,在NuGet包管理控制台 执行    Update-Database  命令,初始化数据库 4.运行应用程序将看到Swagger生成的API接口页面 AspN…
第一部分: 浏览器缓存如何控制?   做网站,不知道缓存是什么东西怎么能行! 如何实现HTTP缓存呢? 下面我们来一步一步的探寻实现机制把. 方案一: 无缓存   说明:浏览器向服务器请求资源m.png, 然后服务器响应请求--找到对应的m.png后发送给浏览器. 之后,浏览器再次向服务器请求m.png, 服务器又发回了同样的一张图片....循环往复..... 优点:浏览器请求,服务器响应,思路清楚简单容易实现. 缺点:每次都请求同样的资源时,服务器也在不断地响应,这是非常浪费带宽的. 方案二:…
1,困惑 做web项目,对于开发者来说,一个最头痛的问题就是浏览器缓存,有缓存,js更改了,html更改了,发布服务器以后用户往往无法通过浏览器访问到最新的类容,需要用户主动去刷新页面, 因为一直做企业后台管理,针对人少的公司直接通知刷新页面(这也是做内部系统才敢这么给用户说),超千人的公司,跨省跨国的,就直接会被劈了,网上有很多解决方案,比如在js上添加版 本号这个方法可行,因为浏览器的缓存机制是针对是针对url来缓存的,比如添加:"http://test.com/test.js?verson…