企业—varnish的基本概念以及模拟varnish实现

一.varnish简介

1.Varnish的工作原理图

  • Varnish是一款高性能的开源反向代理服务器和缓存服务器。
    在这里插入图片描述
    2.varnish的特点

  • varnish可以通过端口进行管理,使用正则语句做到清除缓存的功能,这些squid都做不到,但是在varnish高并发的情况下,资源消耗较高,而且varnish服务进程一旦崩溃,重启,内存中的数据将会全部丢失。

  • varnish与一般服务机器软件类似,就是一个web缓存代理服务器。

  • varnish的进程:master(management)进程和child(worker,主要做cache的工作)进程。master进程读入命令,进行一些初始化,然后fork并监控child进程。child进程分配若干线程进行工作,主要包括一些管理线程和很多worker线程。

二.vcl简介

1.Vcl定义

Varnish Configuration Language(VCL)是varnish配置缓存策略的工具,它是一种基于‘域’的简单变成语言,使用VCL编写的缓存策略通常保存在.vcl文件中,其需要编以成二进制的格式后才能由varnish调用

2.VCL处理流程图

在这里插入图片描述
在这里插入图片描述
处理大致分为以下几个步骤:

  • Receive 状态:也就是请求处理的入口状态,根据 VCL 规则判断该请求应该是 Pass 或Pipe,或者进入 Lookup(本地查询)。

  • Lookup状态:进入此状态后会在hash表中查找数据,若找到则进入Hit状态,若没找到则进入miss状态。

  • Pass状态:在此状态下会进入后端请求,即进入Fetch状态。

  • Fetch状态:在Fetch状态下对请求进行后端的获取,发送请求,获得数据,并进行本地的存储。

  • Deliver状态:将获得的数据发送给客户端然后结束本次请求。

三.CDN简介

CDN全称:Content Delivery Network,即内容分发网络

  • 基本思路:是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快更稳定。

  • 通过在网络各位置处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时的根据网络流量和各结点的连接,负载状态以及到用户的距离和响应时间等综合信息将用户的请求重新导向距离用户最近的服务节点上。

  • 目的:使用户可就近取的所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。

三.模拟varnish的实现

主机环境:

rhel6 selinux,iptables disabled

实验环境:

主机名(IP) 服务
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值