Linux---varnish部分

简单了解varnish的原理:

框架图

Linux---varnish部分_第1张图片

Varnish是一款高性能、开源的反向代理服务器和缓存服务器。Varnish使用内存缓 存文件来减少响应时间和网络带宽消耗。这个项目是由挪威的一家报纸Verdens Gang的网络分支起始的,其架构设计和开发总监Poul-Henning Kamp是FreeBSD核心的开发人员之一,最初项目的管理与基础设施及额外开发由挪威一家Linux咨询公司Linpro提供。

说到varnish,squid就不得不提及。squid算得上是古老的缓存服务器。由于 varnish先进的设计理念,性能要比squid高上许多,varnish还可以通过端口进行管理,使用正则语句做到清除指定缓存的功能,这些 squid都做不到。但是varnish在高并发的情况下,资源消耗较高,而且varnish服务进程一旦崩溃,重启,内存中的缓存数据将全部丢失。

 

varnish是基于现代设备设计的服务项目,所以仅支持64位系统。Manager Process 负责处理请求任务,保证每个任务分配一个worker threads。所以varnish是一个重线程型服务。除此之外,manager process 包含接受CLI命令控制的功能,包括调整运行参数,vcl配置更新。初始化子进程Cacher Process,并按一定频率检测cacher在线与否。

一:  在拍照出来的虚拟机server1中,执行命令yum   install    相关的varnish软件,如图:

Linux---varnish部分_第2张图片

之后执行如图所示的命令

编写varnish这个配置文件,修改内容如下:

Linux---varnish部分_第3张图片

执行下图命令

Linux---varnish部分_第4张图片

编写vim  default.vcl 文件内容如下图:

Linux---varnish部分_第5张图片

最后执行命令/etc/init.d/varnish start 启动varnish

成功后如图:

 

在 安装的虚拟机server2中,安装yum install httpd -y 并且执行命令/etc/init.d/httpd    start     启动这个服务

并且执行下图所表示的命令,编写index.html 内容如下:

Linux---varnish部分_第6张图片

测试:

在真机的网页上进行测试,效果如图:(ip不用进行解析即可测试)

Linux---varnish部分_第7张图片

二.     在虚拟机server1上修改default.vcl文件,如图:

 

Linux---varnish部分_第8张图片

 

我们可以为了方便看到缓存的影响:可以执行下命令来看

在真机上执行命令为 curl   -I   172.25.254.1

如果有缓存,则会直接访问缓存,显示“HIT from westos cache”,如果没有缓存,则会去访问172.25.254.2,显示“MISS from westos cache”

 

在虚拟机server1上:

编写vim /etc/sysconfig/varnish

Linux---varnish部分_第9张图片

编写 vim  /etc/security/limits.cof 配置文件,效果如下:

Linux---varnish部分_第10张图片

 

我们在虚拟机server3上安装httpd软件,并且开启服务:编写index.html内容如下:

Linux---varnish部分_第11张图片

之后mkdir    /www/

编写文件 vim /www/index.html

Linux---varnish部分_第12张图片

 

再编辑server1上的varnish的配置文件如图

Linux---varnish部分_第13张图片

在真实主机上编辑解析文件:vim    /etc/hosts

测试:

注意:用命令 varnishadm ban.url /index.html可以清除server1上之前的有关缓存

         在网页上 搜索不同的域名,会显示不同效果

         或者在主机上执行  curl  www.westos.org      或者curl  bbs.westos.org都可以出现相应的效果

 

三.    在虚拟机server3上,编写vim /etc/httpd/conf/httpd.conf

如图:

Linux---varnish部分_第14张图片

Linux---varnish部分_第15张图片

在server3上解析  vim  /etc/hosts

Linux---varnish部分_第16张图片

在主机上执行下图可以看到两种形式的分别进行:

Linux---varnish部分_第17张图片

四.      cdn  推送

首先在虚拟机server1上 解压下载的包 ,下载php服务   统一放到html 下

Linux---varnish部分_第18张图片

之后作如下操作:

Linux---varnish部分_第19张图片

编写php文件

内容如下:

Linux---varnish部分_第20张图片

最后在虚拟机server1上 修改httpd的端口为8080    Listen=8080  (防止与varnish冲突)

测试:

没推送之前

开始推送

Linux---varnish部分_第21张图片

则表示推送成功

Linux---varnish部分_第22张图片

最后在看效果,发现已经推送成功,如下图所表示:

 

 

你可能感兴趣的:(Linux---varnish部分)