浏览器缓存

squid缓存服务器——传统模式

允我心安 提交于 2020-03-26 10:24:26
一、web代理的工作机制 两台服务器 传统模式中,客户端知道自己是一个代理 透明模式中,不需要对客户端进行设置 二、代理的基本类型 传统代理:适用于internet,需明确指明服务端 透明代理:客户机不需要指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将web访问重定向给代理服务器处理 三、使用代理的好处 提高web’访问速度 隐藏客户机的真实IP地址 四、实操演示传统代理 web端IP:192.168.247.160 squid端IP:192.168.247.206 win10客户端IP:192.168.247.200 1.修改主机名,便于识别 [root@lamp ~]# hostnamectl set-hostname squid [root@lamp ~]# su [root@squid ~]# [root@nginx ~]# hostnamectl set-hostname web [root@nginx ~]# su [root@web ~]# squid为了缓存页面对象,需要设置缓存空间,后面会设置 2.编译安装squid 首先解压squid,安装编译工具 [root@squid ~]# mkdir /abc mkdir: cannot create directory ‘/abc’: File exists [root@squid ~]# mount

强缓存和协商缓存

戏子无情 提交于 2020-03-25 20:43:22
协商缓存 协商缓存是浏览器判断资源是否可用,所以需要两个标识,第一个是第一次请求的响应头带上某个字段(Last-Modified或者Etag),第二个则是后续请求带上的对应请求字段(If-Modified-Since或者If-None-Match),两个标识一起出现才有意义,单独则没有什么效果。 F5刷新有效 ctrl F5无效 强缓存 (本地缓存) cache-control(优先级高于后者) expires 来源: https://www.cnblogs.com/MDGE/p/12568950.html

HTTP 3 代理、网关、隧道

本秂侑毒 提交于 2020-03-25 17:28:56
5. 与HTTP协作的Web服务器 一台Web服务器可搭建多个·独立域名的Web网站,也可作为通信路径上的中转服务器提升传输效率。 用单台虚拟主机实现多个域名: HTTP/1.1规范允许一台HTTP服务器搭建多个Web站点。比如,提供Web托管服务(Web Hosting Service)的供应商,可以用一台服务器为多位客户服务,也可以以每位客户持有的域名运行各自不同的网站。这是因为虚拟主机(virtual host)的功能。 即使物理层面只有一台服务器,但只要使用虚拟主机的功能,则可以假想已具有多台服务器。 客户端使用HTTP协议访问服务器时,会经常采用类似www.hackr.jp这样的主机名和域名。 在互联网上,域名通过DNS服务映射到IP地址(域名解析)之后访问目标网站,当请求发送到服务器时,已经是以IP地址形式访问了。 所以,如果一台服务器内托管了多个域名时,当收到请求时就需要搞清楚究竟要访问哪个域名。 在相同的IP地址下,由于虚拟主机可以寄存多个不同主机名和域名的Web网站,因此在发送HTTP请求时,必须在Host首部内完整指定主机名或域名的URI。 通信数据转发程序:代理、网关、隧道: 代理: 代理是一种有转发功能的应用程序,作用于服务器和客户端“中间人”的角色,接收由客户端发送的请求并转发给服务器,同时也接收服务器返回的响应并转发给客户端。 网关:

浏览器缓存

这一生的挚爱 提交于 2020-03-25 11:19:46
3 月,跳不动了?>>> 缓存的分类有很多种,CDN缓存、数据库缓存、代理服务器缓存和浏览器缓存。造成强制缓存的字段有两个Expires和Cache-Control。 Expires Expires: Thu, 10 Nov 2017 08:45:11 GMT 是一个绝对时间,在响应消息头中,设置这个字段之后,就可以告诉浏览器,在未过期之前不需要再次请求。 Cache-Control 该字段表示资源缓存的最大有效时间,在该时间内,客户端不需要向服务器发送请求,相对时间, max-age:即最大有效时间,在上面的例子中我们可以看到 no-cache:表示没有缓存,即告诉浏览器该资源并没有设置缓存 s-maxage:同max-age,但是仅用于共享缓存,如CDN缓存 public:多用户共享缓存,默认设置 private:不能够多用户共享,HTTP认证之后,字段会自动转换成private。 ` Cache-Control: max-age=2592000` 对比缓存 先从缓存中获取对应的数据标识,然后向服务器发送请求,确认数据是否更新,如果更新,则返回新数据和新缓存;反之,则返回304状态码,告知客户端缓存未更新,可继续使用。 缺点: 1. 如果资源更新的速度是秒以下单位,那么该缓存是不能被使用的,因为它的时间单位最低是秒。 2.如果文件是通过服务器动态生成的

以淘宝为例,解析大型电商服务端架构!

廉价感情. 提交于 2020-03-24 11:28:38
3 月,跳不动了?>>> 作者:若汐缘 https://www.jianshu.com/p/796f488fd134 前言 以淘宝网为例,简单了解一下大型电商的服务端架构是怎样的。如图所示 最上面的就是安全体系系统,中间的就是业务运营系统,包含各个不同的业务服务,下面是一些共享服务,然后还有一些中间件,其中 ECS 就是云服务器,MQS 是队列服务,OCS 是缓存等等,右侧是一些支撑体系服务。 除图中所示之外还包含一些我们看不到的,比如高可用的体现。淘宝目前已经实现多机房容灾和异地机房单元化部署,为淘宝的业务也提供了稳定、高效和易于维护的基础架构支撑。 这是一个含金量非常高的架构,也是一个非常复杂而庞大的架构,当然这个架构不是一天两天演进成这样的,也不是一开始就设计并开发成这样的,对于初创公司而言,很难在初期就预估到未来流量千倍、万倍的网站架构会是怎样的状况,同时如果初期就设计成千万级并发的流量架构,也很难去支撑这个成本。 因此一个大型服务系统,都是从小一步一步走过来的,在每个阶段找到对应该阶段网站架构所面临的问题,然后不断解决这些问题,在这个过程中,整个架构会一直演进,同时内含的代码也就会演进,大到架构、小到代码都是在不断演进和优化的。所以说高大上的项目技术架构和开发设计实现不是一蹴而就的,这是所谓的万丈高楼平地起。 单机架构 从一个小网站说起,一般来说初始一台服务器就够了

以淘宝为例,解析大型电商服务端架构!

早过忘川 提交于 2020-03-24 11:26:39
作者:若汐缘 https://www.jianshu.com/p/796f488fd134 前言 以淘宝网为例,简单了解一下大型电商的服务端架构是怎样的。如图所示 最上面的就是安全体系系统,中间的就是业务运营系统,包含各个不同的业务服务,下面是一些共享服务,然后还有一些中间件,其中 ECS 就是云服务器,MQS 是队列服务,OCS 是缓存等等,右侧是一些支撑体系服务。 除图中所示之外还包含一些我们看不到的,比如高可用的体现。淘宝目前已经实现多机房容灾和异地机房单元化部署,为淘宝的业务也提供了稳定、高效和易于维护的基础架构支撑。 这是一个含金量非常高的架构,也是一个非常复杂而庞大的架构,当然这个架构不是一天两天演进成这样的,也不是一开始就设计并开发成这样的,对于初创公司而言,很难在初期就预估到未来流量千倍、万倍的网站架构会是怎样的状况,同时如果初期就设计成千万级并发的流量架构,也很难去支撑这个成本。 因此一个大型服务系统,都是从小一步一步走过来的,在每个阶段找到对应该阶段网站架构所面临的问题,然后不断解决这些问题,在这个过程中,整个架构会一直演进,同时内含的代码也就会演进,大到架构、小到代码都是在不断演进和优化的。所以说高大上的项目技术架构和开发设计实现不是一蹴而就的,这是所谓的万丈高楼平地起。 单机架构 从一个小网站说起,一般来说初始一台服务器就够了,文件服务器

Spring Cloud 系列之 Netflix Hystrix 服务容错

情到浓时终转凉″ 提交于 2020-03-24 10:10:24
3 月,跳不动了?>>>    什么是 Hystrix      Hystrix 源自 Netflix 团队于 2011 年开始研发。2012年 Hystrix 不断发展和成熟,Netflix 内部的许多团队都采用了它。如今,每天在 Netflix 上通过 Hystrix 执行数百亿个线程隔离和数千亿个信号量隔离的调用。极大地提高了系统的稳定性。   在分布式环境中,不可避免地会有许多服务依赖项中的某些服务失败而导致 雪崩效应 。Hystrix 是一个库,可通过添加等待时间容限和容错逻辑来帮助您控制这些分布式服务之间的交互。Hystrix 通过隔离服务之间的访问点,停止服务之间的级联故障并提供后备选项来实现此目的,所有这些都可以提高系统的整体稳定性。    雪崩效应      在微服务架构中,一个请求需要调用多个服务是非常常见的。如客户端访问 A 服务,而 A 服务需要调用 B 服务,B 服务需要调用 C 服务,由于网络原因或者自身的原因,如果 B 服务或者 C 服务不能及时响应,A 服务将处于阻塞状态,直到 B 服务 C 服务响应。此时若有大量的请求涌入,容器的线程资源会被消耗完毕,导致服务瘫痪。服务与服务之间的依赖性,故障会传播,造成连锁反应,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩”效应。以下图示完美解释了什么是雪崩效应。      当一切服务正常时

HTTP协议的状态码

拥有回忆 提交于 2020-03-23 04:34:18
对于 Web编程 人员来说,熟悉了解HTTP协议的状态码是很有必要的,很多时侯可能根据HTTP协议的状态码很快就能定位到错误信息!今天整理了一下所有HTTP状态码。   HTTP状态码 (HTTP Status Code)是用来表示网页服务器HTTP 响应状态的3位数字代码。它由 RFC 2616 规范定义的,并得到 RFC 2518 、 RFC 2817 、 RFC 2295 、 RFC 2774 、 RFC 4918 等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。 HTTP/1.1定义的状态码值和对应的原因短语(Reason-Phrase)的例子。   1XX表示:消息   这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于HTTP/1.0协议中没有定义任何1xx状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送1xx响应。 这些状态码代表的响应都是信息性的,标示客户应该采取的其他行动。   “100″ : Continue 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分.   “101″ : witching Protocols 服务器已经理解了客户端的请求

memcached高缓存搭建

此生再无相见时 提交于 2020-03-22 12:42:10
memcached高缓存搭建 搭建服务端和客户端,让服务端去链接客户端 web客户端:192.168.247.161 服务端:192.168.247.160 [root@localhost ~]# hostnamectl set-hostname client [root@localhost ~]# su [root@client ~]# [root@nginx ~]# hostnamectl set-hostname server [root@nginx ~]# su [root@server ~]# 搭建服务端 部署libevent 事件通知库 [root@server ~]# mkdir /abc mkdir: cannot create directory ‘/abc’: File exists [root@server ~]# mount.cifs //192.168.254.10/linuxs /abc Password for root@//192.168.254.10/linuxs: [root@server ~]# cd /abc [root@server abc]# tar zxvf libevent-2.1.8-stable.tar.gz -C /opt [root@server abc]# tar zxvf memcached-1.5.6.tar.gz -C

vue搜索历史记录缓存实现

孤者浪人 提交于 2020-03-22 08:41:35
思路: 1.浏览器缓存永久保存搜索历史数据. 2.页面初始化将数据保存到页面变量中. 3.对搜索历史记录的怎加和删除,要同步到缓存中. ----------------直接看代码---------------- *前端使用的是vue,这里只是代码片段* 1.页面的 div <!---历史搜索begin----> <div style="margin-top: 46px"> <div v-if="this.showFlag === true" class="search-history"> <div class="tip-words"> <div style="float: left;"> <h4>搜索历史</h4> </div> <div style="float: right;" @click="clearHistoryItems"> <img src="../../img/img/delete-1.png" width="16px"/> </div> </div> <p style="margin-bottom: 10px"> </p> <div v-for="(item,index) in searchHistoryList" :key="index" @click="searchByHistoryKeyWord(item)" class="history-keywords"