varnish CLI管理
命令:varnishadm [-t timeout] [-S secret_file] [-T address:port] [-n name] [command [...]]
./varnishadm -T 127.0.0.1:
- -t timeout:等待一个操作完成的时间,单位秒
- -S secret_file:确定一个认证的安全文件
- -T address:port:连接到管理接口的地址和端口,在启动Varnish时指定的
- -n name:连接到管理接口的名字, 在启动Varnish时指定的
CLI主要能完成如下的功能:
- 配置:能上传、修改和删除VCL文件
- 参数:能查看和修改各种参数
- 清除缓存:可以清除Varnish中的缓存内容
- 进程管理:可以启动或者停止缓存子进程
CLI中常用的命令
backend.list:列出定义中的backend,包括它们的健康状态
vcl.load configname filename:创建一个新的配置,配置的名字是configname,内容是filename指定的文件内容
vcl.show configname:显示配置的具体内容
vcl.use configname:使用哪一个配置
vcl.list:列出可用的配置,以及参照使用他们的数量
ban field operator argument [&& field operator argument [...]]:使得匹配ban表达式的内容从缓存中清除。
- 一个ban表达式包含一到多个条件,一个条件由一个字段、一个操作符、一个参数构成,多个条件之间可以用“&&”来表示 and的关系
- 字段可以是任意的VCL变量,如:req.url, req.http.host or obj.http.set-cookie等
- 操作符有:==表示等、~匹配正则表达式、>、<、!等
- 参数可以是一个用双引号引起来的字符串,也可以是正则表达式、或者数字。数字后面开可以跟“KB”, “MB”, “GB” 或“TB”等。
- 示例如下:
清除请求url完全匹配“/news”的缓存内容: ban req.url == "/news“
清除请求url不能以.ogg结尾,同时这对象的大小不能大于10M 的缓存内容ban req.url !~ ".ogg$" && obj.size > 10MB
清除host为example.com或者www.example.com,同时从backend获得set-cookie头里面包含userid=1663 , 的缓存内容
ban req.http.host ~ "^(?i)(www\.)example.com$" && obj.http.set-cookie ~"USERID=1663
ban.list:内容ban列表。
- 如果缓存的内容比ban旧,那么这个缓存内容会被标示成banned,不能再使用这个
- 缓存内容,需要从backend获取内容。
- 如果ban的表达式比所有的缓存对象都旧的话,它将从ban的list里面去掉
- ban.list输出的格式如下:
0x7fea4fcb0580 1303835108.618863 131G req.http.host ~ www.myhost.com &&req.url ~ /some/url
第一个字段是ban的地址,第二个字段是时间戳,第三个字段表示有多少个对象
受此ban的影响(通常在debug时才有效),G表示这个ban已经Gone,也就不再有效了
后面的内容才是真正的ban的内容。
quit:退出CLI管理
help [command]:显示命令的帮助,不写命令就显示所有的命令
varnish CLI管理的更多相关文章
- RabbitMQ CLI 管理工具 rabbitmqadmin(管理和监控)
插个广告,公司最近在招".NET"开发(杭州),如果你现在还从事 .NET 开发(想用 .NET Core,但被公司不认可),想转 JAVA 开发(但又没有工作经验,惧怕面试),想 ...
- 7.6 CLI 管理Varnish
./varnishd -f /usr/common/varnish/etc/varnish/ -a 测试: 代理tomcat服务器地址:http://172.20.10.5:1111/ telnet ...
- 缓存varnish的管理及配置详解
一 工作原理 在当前主流的Web服务架构体系中,Cache担任着越来越重要的作用.常见的基于浏览器的C/S架构,Web Cache更是节约服务器资源的关键.而最近几年由FreeBSD创始人之一Kamp ...
- 通过 CLI 管理 Jenkins Server
Jenkins 内置的命令行接口允许管理员通过命令行工具访问并管理 Jenkins.这让我们可以通过脚本自动化的创建配置或执行任务,也就是把 Jenkins 中的配置代码化了.Jenkins 同时支持 ...
- 使用阿里云cli管理安全组
相比于python SDK方式,阿里云基于GO SDK开发了一整套CLI工具,可以通过调用RPC API来管理云资源,对编程能力不够的人来说是个福音. 而且,阿里云CLI的文档比SDK的文档更加全面, ...
- 使用 Azure CLI 管理 Azure 虚拟网络和 Linux 虚拟机
Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程将指导读者部署两个虚拟机,并为这些 VM 配置 Azure 网络. 本教程中的示例假设 VM 将要托管包含数据库后端的 Web ...
- 使用 Azure CLI 管理 Azure 磁盘
Azure 虚拟机使用磁盘来存储 VM 操作系统.应用程序和数据. 创建 VM 时,请务必选择适用于所需工作负荷的磁盘大小和配置. 本教程介绍如何部署和管理 VM 磁盘. 学习内容: OS 磁盘和临时 ...
- 用华为云cli,管理华为云服务器的,安全组端口
---[前言]--- 关键字 hcloud 华为 命令行 linux windows powershell 前些天,大家因为华为云,是否应该默认开启端口,大家吵起来了,所以我抽空写了此文.解决问题,缓 ...
- varnish 测试
安装 通过epel 源 yum 安装 [root@localhost varnish]# rpm -ql varnish /etc/logrotate.d/varnish /etc/varnish / ...
随机推荐
- 手写alert弹框(一)
采用原生的JavaScript, html代码 <meta name="viewport" content="width=device-width, initial ...
- Linux下的crontab定时执行任务简要说明
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“cr ...
- 20182332 实验一《Linux基础与Java开发环境》实验报告
20182332 实验一<Linux基础与Java开发环境>实验报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 盛国榕 学号:20182332 实验教师:王志强 ...
- 以太坊Geth通过私钥导入新地址到钱包步骤
Open TextEdit Paste key into TextEdit without any extra characters or quotations Save the file as pk ...
- Firefox Chrome Http请求插件
Firefox:HttpRequester Chrome:Advanced Rest Client
- SqlServer视图介绍以及创建方式
1.,视图的介绍: (ps:学sqlServer视图是在面试问到之后学的,答不上来太low了,然后就去各种搜索操作对视图也有了自己的理解) 其实视图就是一张表,是一张表中或者多张表中经过某种筛选后显示 ...
- 用VLC读取摄像头产生RTSP流,DSS主动取流转发(一)
用VLC读取摄像头产生RTSP流,DSS主动取流转发(一) 摄像机地址是192.1.101.51,VLC运行在192.1.101.77上,DSS服务器架设在192.1.101.30上. Step1:V ...
- LeetCode_14. Longest Common Prefix
14. Longest Common Prefix Easy Write a function to find the longest common prefix string amongst an ...
- 给数据库授权,否则程序、navicat无法连接数据库的,每创建一个数据库都要给数据库授权
给数据库授权,否则程序.navicat无法连接test1数据库的 mysql> grant all privileges on test1.* TO 'root'@'%' identified ...
- 【ABAP系列】SAP ABAP Break Point
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP Break P ...