varnish服务器

Vainish是一款高性能且开源的反向代理服务器和http加速器。

与传统的squid相比,Varnish具有性能更高、速度更快等诸多优点。

Varnish服务器

--/etc/varnish      #配置文件目录

/etc/init.d/varnish   #varnish的启动程序

/etc/sysconfig/varnish #配置文件,varnish定义自身属性

/etc/varnish/default.vcl #默认配置文件,定义后端节点

--/usr/bin/varnishadm    #客户端程序

--/usr/bin/varnishstat    #状态监控

使用Varnish加速Web
通过配置Varnish缓存服务器,实现如下目标:
1,使用Varnish加速后端Apache Web服务
2,使用varnishadm命令管理缓存页面
3,使用varnishstat命令查看Varnish状态
方案
1,通过源码编译安装Varnish缓存服务器
2,编译安装Varnish软件
3,复制启动脚本与配置文件

使用3台RHEL7虚拟机,其中一台作为varnish服务器,
  该服务器用来连接两个网段,因此需要配置两块网卡,
  地址分别为192.168.4.5和192.168.2.5
  一台作为客户端测试主机,IP地址为192.168.4.100。
  一台Web服务器,地址为192.168.2.100,
  该Web服务器为其他代理提供Web数据源。

步骤
步骤一:构建Web服务器
1)使用yum安装web软件包
[[email protected] ~]# yum -y install httpd
2)启用httpd服务,并设为开机自动运行
[[email protected] ~]# systemctl start httpd
[[email protected] ~]# systemctl enable httpd
3)为Web访问建立测试文件
[[email protected] ~]#echo "i am 192.168.2.100"
步骤二:部署Varnish缓存服务器
1)编译安装软件
[[email protected] ~]#yum -y install gcc readline-devel pcre-devel    //安装软件依赖包
[[email protected] ~]# useradd -s /sbin/nologin varnish               //创建账户
[[email protected] ~]# tar -xzf varnish-3.0.6.tar.gz
[[email protected] ~]# cd varnish-3.0.6
[[email protected] varnish-3.0.6]# ./configure --prefix=/usr/local/varnish
[[email protected] varnish-3.0.6]# make && make install
2)复制启动脚本及配置文件
[[email protected] varnish-3.0.6]#cd redhat/
[[email protected] redhat]# cp redhat/varnish.initrc /etc/init.d/varnish
[[email protected] redhat]# cp redhat/varnish.sysconfig /etc/sysconfig/varnish
[[email protected] redhat]# ln -s /usr/local/varnish/sbin/varnishd /usr/sbin/
[[email protected] redhat]# ln -s /usr/local/varnish/bin/* /usr/bin/
3)修改Varnish文件
[[email protected] ~]# vim /etc/sysconfig/varnish
66行:VARNISH_LISTEN_PORT=80                              #默认端口
89行:VARNISH_STORAGE_SIZE=64M                            #定义缓存大小
92行:VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}"   #基于内存方式缓存
4)修改代理配置文件
[[email protected] ~]# mkdir /etc/varnish
[[email protected] ~]# cp /usr/local/varnish/etc/varnish/default.vcl /etc/varnish/
[[email protected] ~]# uuidgen > /etc/varnish/secret
[[email protected] ~]# vim  /etc/varnish/default.vcl
backend default {
     .host = "192.168.2.100";
     .port = "80";
 }
[[email protected] ~]# service  varnish  start
步骤三:客户端测试
[[email protected] ~]# curl http://192.168.4.5

其他操作
1)查看varnish日志
[[email protected] ~]# varnishlog             //varnish日志
[[email protected] ~]# varnishncsa            //访问日志,实时日志,在客户端访问才能看到日志
2)更新缓存数据,在后台web服务器更新页面内容后,
   用户访问代理服务器看到的还是之前的数据,
   说明缓存中的数据过期了需要更新(默认也会自动更新,但非实时更新)。
[[email protected] ~]# varnishadm –S /etc/varnish/secret –T 127.0.0.1:6082 ban.url 页面文件名
#清空缓存数据,支持正则表达式(非交互)
[[email protected] ~]#varnishadm stop #停止服务
[[email protected] ~]#varnishadm start #启动服务
[[email protected] ~]#varnishadm status #查看状态
[[email protected] ~]#varnishadm ban.url / #清空缓存

缓存过期:
1)等待更新
2)手动更新(在/etc/sysconfig/varnish查看端口以及安全文件)(交互)
varnishadm –S /etc/varnish/secret –T 127.0.0.1:6082 #进入
backend.list #查看后端的信息
ban.url .* #所有更新

原文地址:http://blog.51cto.com/13463622/2060757

时间: 2024-10-08 17:10:25

varnish服务器的相关文章

搭建cdn的高性能HTTP加速器Varnish服务器

CND的简单了解: 内容分发网络(CDN)是一种新型网络构建方式,它是为能在传统的IP网发布宽带丰富媒体而特别优化的网络覆盖层:而从广义的角度,CDN代表了一种基于质量与秩序的网络服务模式. CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡.内容分发.调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率.CDN的关键技术主要有内容存储和分发技术. CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中

高可用haproxy调度varnish服务器缓存后端动静分离集群架构

(1) 动静分离部署wordpress,动静都要能实现负载均衡,要注意会话的问题: (2) 在haproxy和后端主机之间添加varnish进行缓存: (3) 给出设计拓扑,写成博客: (4) haproxy的设定要求: (a) stats page,要求仅能通过本地访问使用管理接口:  (b) 动静分离: (c) 分别考虑不同的服务器组的调度算法: (5) haproxy高可用: 实验规划: 利用keepalived主备高可用两个haproxy服务器 对varnish缓存服务器做高可用 动态w

安装varnish服务器

第一步 安装3台nginx服务器 地址为192.168.1.35,192.168.1.36,192.168.1.37 安装varnish的服务器IP为192.168.1.33 第二步获取安装varnish所需要的包 编译 安装varnish2.0需要pcre库,pcre库为了兼容正则表达式 下载地址http://down.51cto.com/data/2315007 #tar xvf pcre-8.39.tar.gz #cd pcre-8.39 # ./configure --prefix=/u

Squid代理服务器 、 Varnish服务器

代理服务器:什么是代理服务器?简单举个例子,假设百度的Web服务器在北京,当我们访问百度的服务器时,我们的请求并不是发送到北京的Web服务器,而是通过代理服务器来实现.比如我们在上海,服务器在北京,那我们去访问百度,距离长,访问速度慢.所以我们就可以在上海搭建一个代理服务器. 应用场景: Web访问加速 IP伪装,××× ########################################################################################

Squid服务器,Varnish服务器

反向代理 1.1 问题 通过配置代理服务器,实现以下目标: 代理服务器可以将远程的Web服务器页面缓存在本地 代理服务器端口设置为80端口 用户通过访问代理服务器即可获得远程Web服务器上的页面内容 远程Web服务器对客户端用户是透明的 利用缓存机制提高网站的响应速度 1.2 方案 使用3台RHEL7虚拟机,其中一台作为Squid代理服务器,该服务器用来连接两个网段,因此需要配置两块网卡,地址分别为 192.168.4.5和192.168.2.5.一台作为客户端测试主机,IP地址为192.168

运维-服务器缓存之varnish

varnish 一.介绍下吧: 首先了解几个概念, 1. Varnish不缓存带有Set-Cookie头的http输出. 2. 对于HTTP协议中缓存部分,Varnish遵从http协议部分.如:带有如下头信息,Control-Cache: no-store, no-cache, must-revalidate, post-check=0, pre-check=0,默认varnish不会缓存. 3. HTTP协议中缓存部分,Control-Cache优先于Expires,Pragma: no-c

缓存服务器varnish实践篇

一.实验环境 服务器 IP地址 系统版本 varnish服务器 172.16.8.1 Centos6.5 web1服务器 172.16.8.5:81 Centos6.5 web2服务器 172.16.8.5:82 Centos6.5 img1服务器 172.16.8.5:83 Centos6.5 img2服务器 172.16.8.5:84 Centos6.5 php1服务器 172.16.8.5:85 Centos6.5 php2服务器 172.16.8.5:86 Centos6.5 二.安装v

nginx反代varnish缓存服务器实现后端amp动静分离架构

1.前端nginx做调度器及反代服务器,将用户的请求调度至后端的两台varnish,缓存调度算法使用一致性hash算法保证缓存命中率: 2.两台varnish反向代理用户请求至三个(组)后端主机,分别为存储静态资源(htm,html,css,js),应用程序服务器(可以部署wordpress或Discuz!),图片统一保存至图片服务器: 3.用户登录后,可以通过wordpress发布新的博文,并且可以上传图片: 4.如果后端主机全部宕机,varnish可以使用过期缓存响应客户端:        

Varnish反向代理缓存服务器

缓存及加速 高性能缓存服务器1.1 Varnish概述一款高性能.开源的反向代理服务器和缓存服务器(一台varnish可以抵6台Squid)Varnish使用内存做为缓存设备(纯内存缓存服务器方案),相对于Squid(采用硬盘缓存),拥有更快的缓存速度(varnish内存管理完全交给内核,但当缓存内容超过阈值时,内核会自动将一部分缓存存入swap中,让出内存) 1.Varnish进程 varnish主要运行两个进程:Management 进程和Child进程(也称为Cache进程)Managem