zoukankan      html  css  js  c++  java
  • Varnish加速web

    使用Varnish加速后端Web服务

    代理服务器可以将远程的Web服务器页面缓存在本地

    远程Web服务器对客户端用户是透明的

    利用缓存机制提高网站的响应速度

    使用varnishadm命令管理缓存页面

    使用varnishstat命令查看Varnish状态

    (一)装包配置

    [root@proxy ~]# yum -y install gcc readline-devel	#安装软件依赖包
    [root@proxy ~]# yum -y install ncurses-devel 		#安装软件依赖包
    [root@proxy ~]# yum -y install pcre-devel		#安装软件依赖包
    [root@proxy ~]# yum -y install python-docutils 		#安装软件依赖包
    [root@proxy ~]# useradd -s /sbin/nologin varnish	#创建账户
    [root@proxy ~]# tar -xf varnish-5.2.1.tar.gz
    [root@proxy ~]# cd varnish-5.2.1
    [root@proxy varnish-5.2.1]# ./configure
    [root@proxy varnish-5.2.1]# make && make install

    [root@proxy varnish-5.2.1]# cp etc/example.vcl /usr/local/etc/default.vcl
    [root@proxy ~]# vim  /usr/local/etc/default.vcl
    backend default {
         .host = "192.168.2.100";
         .port = "80";
     }
    

     (二)启动服务

    [root@proxy ~]# varnishd  -f /usr/local/etc/default.vcl
    #varnishd命令的其他选项说明如下:
    #varnishd -s malloc,128M		定义varnish使用内存作为缓存,空间为128M
    #varnishd -s file,/var/lib/varnish_storage.bin,1G 定义varnish使用文件作为缓存
    

     (三)其他操作

    1)查看varnish日志
    
    [root@proxy ~]# varnishlog						//varnish日志
    [root@proxy ~]# varnishncsa					//访问日志
    
    2)更新缓存数据,在后台web服务器更新页面内容后,用户访问代理服务器看到的还是之前的数据,说明缓存中的数据过期了需要更新(默认也会自动更新,但非实时更新)。
    
    [root@proxy ~]# varnishadm  
    varnish> ban req.url ~ .*
    //清空缓存数据,支持正则表达式
    
  • 相关阅读:
    SpringMVC自动封装List对象 —— 自定义参数解析器
    fetch封装
    基于jQuery实现简单的js模块化
    CSS实现树形结构 + js加载数据
    java多线程
    JS中AOP的实现和运用
    移动端通过ajax上传图片(文件)并在前台展示——通过H5的FormData对象
    chart.js使用常见问题
    用PHP和Ajax进行前后台数据交互——以用户登录为例
    用JS添加和删除class类名
  • 原文地址:https://www.cnblogs.com/zshBlos/p/13964686.html
Copyright © 2011-2022 走看看