一、什么是CDN推送

当后端服务器中的DNS有更新的时候,在varnish的缓存中应该及时地同步后端服务器中的内容。相当于清空varnish中的缓存,当下一次进行访问时,直接从服务器中获取新的内容。

二、配置过程

1、在varnish(server1)中安装httpd服务,并编辑httpd配置文件,将136行的端口号修改为8080(因为varnish服务器已经占用了80端口)

2、安装php

---> yum install php -y

3、安装bansys.zip压缩包。(压缩到/var/www/html目录下)

--->  unzip  bansys.zip  -d /var/www/html

--->  mv /var/www/html/*  /var/www/html

--->  vim /vat/www/html/bansys/config.php

 <?php
 $var_group1 = array(
 'host' => array('172.25.2.1'),    # 定义主机列表ip和端口号
 'port' => '80',
 );
 //varnish 群组定义
 //对主机列表进行绑定
 $VAR_CLUSTER = array(
 'www.xniu.com' => $var_group1,     # 绑定varnish主机
 );
 //varnish 版本//2.x 和 3.x 推送命令不一样
 $VAR_VERSION = "3";                # varnish版本为3
 ?>

4、在server1主机中打开httpd服务,在物理主机中输入172.25.2.1:8080可以显示CDN推送的界面

5、编写varnish默认文件

--->  vim /etc/varnish/default      # 添加即可

  acl westos {
  #设置访问控制
  "127.0.0.1";
  "172.25.2.0"/24;        # varnish主机的子网掩码
  }
  backend web1 {
  .host = "172.25.2.2";
  .port = "80";
  }
  backend web2 {
  .host = "172.25.2.3";
  .port = "80";
  }
  director lb round-robin {
  { .backend = web1; }
  { .backend = web2; }
  #把多个后端聚合为一个组,并检测后端健康状况
  }

# 此时需要注释掉pass(防止直接到服务器端获取)

sub vcl_recv {
  if (req.request == "BAN") {
  if (!client.ip ~ xniu) {
  error 405 "Not allowed.";
  }
  ban("req.url ~ " + req.url);
  error 200 "ban added";
  }
  }

--->  /etc/init.d/varnish  reload

6、在浏览器中进行测试(修改varnish的缓存后的结果是不一样的。此时我们选择http方式 )

--->  curl  -I  www.xniu.com        # 对缓存时间进行查看

1)首先,通过网页访问一个后端服务器。(此时,varnish加速器对网页进行缓存;之后进行刷新,是不会变化的)

2)CDN推送后(到达推送界面,有推送完成提示后,点击返回)。

   3)然后点击刷新,www.xniu.com会切换到另一个服务器的默认发布目录。

CDN推送的更多相关文章

  1. goEasy消息推送,pushlet 向特写用户实时推送

    goEasy 1先去goEasy官网注册goeasy.io,并创建application,得到superKey 2引入js <script type="text/javascript& ...

  2. PHP Web实时消息后台服务器推送技术---GoEasy

    越来越多的项目需要用到实时消息的推送与接收,怎样用php实现最方便呢?我这里推荐大家使用GoEasy, 它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送! 浏览器兼容性:GoEasy推送 ...

  3. Ruby Web实时消息后台服务器推送技术---GoEasy

    越来越多的项目需要用到实时消息的推送与接收,怎样用Ruby实现最方便呢?我这里推荐大家使用GoEasy, 它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送! 浏览器兼容性:GoEasy推 ...

  4. web推送

    WEB消息推送框架 web-msg-sender是一款web长连接推送框架,采用PHPSocket.IO开发,基于WebSocket长连接通讯,如果浏览器不支持WebSocket则自动转用comet推 ...

  5. 用GoEasy推送实现Java实时推送

    前段时间客户有个需求他希望他在后台管理页面发布一个消息,所有用这个系统的用户无论在哪个页面都能及时收到他发布的信息,以前对于类似需求在少量 页面接收的前提下,我一般采用ajax定时去服务器pull信息 ...

  6. GoEasy消息推送

    1. 从GoEasy获取appkey appkey是验证用户的有效性的唯一标识. 注册账号. GoEasy官网:https://goeasy.io 用注册好的账号登录到GoEasy的后台管理系统,创建 ...

  7. 海外 App 的推送服务,试试 FCM 吧!!!

    > **版权声明:** > > **本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有.** > > **每周会统一更新到这里,如果喜欢,可关注公 ...

  8. web消息推送-goesay

    原文:http://www.upwqy.com/details/22.html 1 GoEasy简介: GoEasy - Web实时消息推送服务专家 最简单的方式将消息从服务器端推送至客户端 最简单的 ...

  9. HTTP/2之服务器推送(Server Push)最佳实践

    商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处.   WeTest 导读 HTTP/1.X出色地满足互联网的普遍访问需求,但随着互联网的不断发展,其性能越来越成为瓶颈.IETF在2015 ...

随机推荐

  1. php 中处理 websocket

    http://www.cnblogs.com/hustskyking/p/websocket-with-php.html 下面我画了一个图演示 client 和 server 之间建立 websock ...

  2. Web安全学习笔记之Nmap命令参考指南

    最近研究Nmap,命令太多,详细还是需要参考官方文档(可选中文) 本文转载 在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型.物理端口指的是物理存在的端口,如ADSL Modem.集线器. ...

  3. 安卓Android第三方登录-QQ登录

    要实现QQ第三方登录,其实只需要一个封装类:QQLoginManager 几乎 三行代码 就实现QQ登录功能 这里先给出Github开源项目地址,项目下有详细的使用说明   下面就开始详细说一说怎么实 ...

  4. linux下如何获取sd卡中的mbr

    答:使用dd命令,示例如下: dd if=/dev/mmcblk0 of=mbr.bin bs=512 count=1 解析: bs表示指定输入输出的块大小为512个字节 count表示指定读取输入的 ...

  5. centos 查询mysql配置文件位置

    具体指令: 1.which mysqld  (”which 文件名“ : 搜索命令所在路径及别名) 2./usr/sbin/mysqld --verbose --help | grep -A 1 'D ...

  6. 事务的学习,从jdbc开始:jdbc对事务的支持与实现

    在使用spring对项目进行开发时,所有的事务都是由spring来管理的.这样一来我们就可以不需要操心事务,可以专心的处理业务代码. 但是,事务的底层究竟是如何实现的呢?那就从jdbc开始学习. 在使 ...

  7. Ubuntu16.04怎么安装virtualenv虚拟环境

    最近安装virtualenv的python虚拟环境,在网上找了很多,尝试了很多,都有各种问题,最终搞定后,给大家分享下我的过程,希望大家少走弯路. 本次安装是基于Ubuntu16.04Linux版本安 ...

  8. vue集成ueditor

    相关代码见github 1.引入ueditor相关的文件,具体目录见下图如下 我将下载的文件放在static下面,这里专门用来放置相关的静态文件 (在ueditor.config.js需要配置一下路径 ...

  9. 【TensorFlow/简单网络】MNIST数据集-softmax、全连接神经网络,卷积神经网络模型

    初学tensorflow,参考了以下几篇博客: soft模型 tensorflow构建全连接神经网络 tensorflow构建卷积神经网络 tensorflow构建卷积神经网络 tensorflow构 ...

  10. valgrind的memchk和callgrind

    一.安装valgrind 安装valgrind,正常的三部曲configure/make/make install就行. 二.memchk使用 1.执行命令 [root@10g-host4 tools ...