命令: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管理的更多相关文章

  1. RabbitMQ CLI 管理工具 rabbitmqadmin(管理和监控)

    插个广告,公司最近在招".NET"开发(杭州),如果你现在还从事 .NET 开发(想用 .NET Core,但被公司不认可),想转 JAVA 开发(但又没有工作经验,惧怕面试),想 ...

  2. 7.6 CLI 管理Varnish

    ./varnishd -f /usr/common/varnish/etc/varnish/ -a 测试: 代理tomcat服务器地址:http://172.20.10.5:1111/ telnet ...

  3. 缓存varnish的管理及配置详解

    一 工作原理 在当前主流的Web服务架构体系中,Cache担任着越来越重要的作用.常见的基于浏览器的C/S架构,Web Cache更是节约服务器资源的关键.而最近几年由FreeBSD创始人之一Kamp ...

  4. 通过 CLI 管理 Jenkins Server

    Jenkins 内置的命令行接口允许管理员通过命令行工具访问并管理 Jenkins.这让我们可以通过脚本自动化的创建配置或执行任务,也就是把 Jenkins 中的配置代码化了.Jenkins 同时支持 ...

  5. 使用阿里云cli管理安全组

    相比于python SDK方式,阿里云基于GO SDK开发了一整套CLI工具,可以通过调用RPC API来管理云资源,对编程能力不够的人来说是个福音. 而且,阿里云CLI的文档比SDK的文档更加全面, ...

  6. 使用 Azure CLI 管理 Azure 虚拟网络和 Linux 虚拟机

    Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程将指导读者部署两个虚拟机,并为这些 VM 配置 Azure 网络. 本教程中的示例假设 VM 将要托管包含数据库后端的 Web ...

  7. 使用 Azure CLI 管理 Azure 磁盘

    Azure 虚拟机使用磁盘来存储 VM 操作系统.应用程序和数据. 创建 VM 时,请务必选择适用于所需工作负荷的磁盘大小和配置. 本教程介绍如何部署和管理 VM 磁盘. 学习内容: OS 磁盘和临时 ...

  8. 用华为云cli,管理华为云服务器的,安全组端口

    ---[前言]--- 关键字 hcloud 华为 命令行 linux windows powershell 前些天,大家因为华为云,是否应该默认开启端口,大家吵起来了,所以我抽空写了此文.解决问题,缓 ...

  9. varnish 测试

    安装 通过epel 源 yum 安装 [root@localhost varnish]# rpm -ql varnish /etc/logrotate.d/varnish /etc/varnish / ...

随机推荐

  1. SQL连接查询基础知识点

    什么是连接 连接(join)查询是基于多个表中的关联字段将数据行拼接到一起,可以同时返回多个表中的数据. 下面以两个表为例子,举例说明一下不同的连接. SELECT * FROM products i ...

  2. treeview判断节点是不是已存在

    /// <summary>        /// 判断treeView的节点是否已存在  treeView1.Nodes[0].Nodes        /// </summary& ...

  3. 关于mysql数据库远程访问

    mysql数据库安装默认为只能本地访问,若需远程连接需根据不同的操作系统做一些操作 Windows: 新装的mysql本地无法登录,显示为1045错误 mysql#1045(1045Access de ...

  4. 导出和导入eclipse中通过help安装的插件的地址

    这种方式和在线安装一样,唯一方便的就是不用再去翻找软件下载地址 导出已安装的插件: 打开Window ——>Preferences ——>Install/Update——>Avail ...

  5. springboot项目报Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is`...解

    参考文章:https://blog.csdn.net/qq_42815754/article/details/83652253 <!-- MySql驱动 --> <dependenc ...

  6. 前端知识点回顾——Reactjs

    React.js 编写react需要安装的三个开发环境下的模块 babel 解析JSX react 实现ui用户界面 react-dom 处理dom JSX:在JavaScript里面写html代码( ...

  7. CPU分几核几核的是什么意思?

    CPU的几核分类其实是按照CPU的地址总线数量来分类的 单核心的地址总线数量是8条 双核心就是16条 三核心就是24 依次类推,核心的多少,只需要知道地址总线的多少,然后除以8就得出来了 地址总线:地 ...

  8. java -- SSM配置完成后,能访问jsp文件不能访问html文件,报错解析

    SSM配置完成后,能访问jsp文件不能访问html文件,报错解析 在确保路径没有任何问题的,情况下,相同的页面,jsp能够正常访问,html却不能正常访问(404). 解决方法: 在web.xml中添 ...

  9. 记录一次vxworks下使用NFS组件的过程

    问题:有三块CPU都运行vxworks6.9,现在想要CPU3做server,CPU1-2通过NFS访问CPU3上的文件 补充:使用防火墙可能会影响NFS访问,目前我还没有找到解决办法... 下面是过 ...

  10. k8s学习之资料参考网址(持续更新)

    此文章持续更新关于学习k8s生态的参考网址:  二进制方式搭建 (此部署方式是一步一步的部署,过程清晰)            https://github.com/opsnull/follow-me ...