前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Varnish 实现Web站点加速

Varnish 实现Web站点加速

作者头像
微软技术分享
发布2022-12-28 14:23:41
2820
发布2022-12-28 14:23:41

Varnish 是一款高性能的开源HTTP加速器。

编译安装Varnish

1.安装依赖包

代码语言:javascript
复制
#yum install -y libtool ncurses-devel pcre-devel libxslt libedit python-imaging python-docutils

yum install -y pcre-devel python-docutils libedit-dev* 

2.编译安装Varnish

代码语言:javascript
复制
wget http://varnish-cache.org/_downloads/varnish-6.0.0.tgz

tar -xzvf varnish-6.0.0.tgz

cd varnish-6.0.0/

./configure --prefix=/usr/local/varnish6

make && make install

ln -s /usr/local/varnish6/sbin/* /usr/sbin/
ln -s /usr/local/varnish6/bin/* /usr/local/bin/

cp -a /usr/local/varnish6/share/doc/varnish/example.vcl /usr/local/varnish6/default.vcl

Varnish实现负载均衡并实现页面缓存

1.编辑Varnish主配置文件,在相应的区域追加写入以下标★语句

代码语言:javascript
复制
vim /usr/local/varnish/default.vcl

15 # Default backend definition. Set this to point to your content server.
16 backend default {
17     .host = "127.0.0.1";
18     .port = "8080";
19 }
20 
★ backend web1 {                                          #均衡web主机1
★         .host="192.168.1.13";
★         .port="80";                                     #指定端口
★ .probe = {                                              #开启健康检查
★         .url = "/";                                     #请求的URL路径
★         .interval = 5s;                                 #查询间隔时间
★         .timeout = 1s;                                  #超时时间
★         .window = 5;                                    #滑动窗
★         .threshold = 3;                                 #上次检查.window数量的多少
★         }
★ }
★ backend web2 {
★         .host="192.168.1.14";                           #均衡web主机2
★         .port="80";                                     #指定端口
★ .probe = {                                              #开启健康检查
★         .url = "/";                                     #请求的URL路径
★         .interval = 5s;                                 #查询间隔时间
★         .timeout = 1s;                                  #超时时间
★         .window = 5;                                    #滑动窗
★         .threshold = 3;                                 #上次检查.window数量的多少,
★         }
★ }
★ 
★ import directors;                                       #加载directors模块
★ 
★ sub vcl_init {                                          #缓存及加速-03单-高性能缓存服务器
★ 
★ new bar = directors.round_robin();
★ bar.add_backend(web1);
★ bar.add_backend(web2);
★ 
★ }
★ 
★ sub vcl_recv {
★ 
★ set req.backend_hint = bar.backend();			#指定backend
★ 
★ }

2.检查配置文件,并启动Varnish

代码语言:javascript
复制
varnishd -C -f /usr/local/varnish6/default.vcl		#检查语法

varnishd -f /usr/local/varnish6/default.vcl		#启动

pkill varnishd						#关闭Varnish

varnishlog						#查看Varnish日志

netstat -anpt | grep varnishd				#检查是否启动

3.验证环节

代码语言:javascript
复制
elinks http://127.0.0.1/				#varnish服务器会根据算法分配流量
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 编译安装Varnish
  • Varnish实现负载均衡并实现页面缓存
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档