一.简介
1.varnish的工作原理
- varnish是一款高性能的开源HTTP加速器,具有反向代理与缓存的功能
- varnish 工作原理图:
-
vcl处理过程
处理过程大致分为如下几个步骤:
(1)Receive 状态,也就是请求处理的入口状态,根据 VCL 规则判断该请求应该是 Pass 或
Pipe,或者进入 Lookup(本地查询)。
(2)Lookup 状态,进入此状态后,会在 hash 表中查找数据,若找到,则进入 Hit 状态,否则进
入 miss 状态。
(3)Pass 状态,在此状态下,会进入后端请求,即进入 fetch 状态。
(4)Fetch 状态,在 Fetch 状态下,对请求进行后端的获取,发送请求,获得数据,并进行本地
的存储。
(5)Deliver 状态, 将获取到的数据发送给客户端,然后完成本次请求。
2.CDN简介
- CDN的全称是Content Delivery Network,即内容分发网络。
- CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。
- CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。
- CDN的基本思路通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
二.实验环境
配置虚拟机:
1.下载rhel6.5镜像,安装虚拟机(最小安装即可)。
2.虚拟机的配置
1)修改主机名称
2)添加本地解析
3)配置网卡
4)配置yum仓库(网络yum源搭建完成)
5)安装必要的软件
yum install vim openssh-clients lftp -y
6)删除70-persistent-net.rules
rm -fr /etc/udev/rules.d/70-persistent-net.rules
搭建实验环境:
1.生成三个虚拟机的快照
cd /var/lib/libvirt/images/
qemu-img create -f qcow2 -b rhel6.5.qcow2 server1
qemu-img create -f qcow2 -b rhel6.5.qcow2 server2
qemu-img create -f qcow2 -b rhel6.5.qcow2 server3
2.打开虚拟机管理器,安装快照虚拟机
3.修改虚拟机的主机名称与ip
server1 | 172.25.14.1 | varnish |
server2 | 172.25.14.2 | apache |
server3 | 172.25.14.3 | apache |