安装varish作为缓存和代理
第1种 Nginx(负载)+varish(缓存)+WEB
第2种 Varish(缓存和负载)+web
2,varish是以内存作为共享容器的:
内存的大小决定了它的缓存容量。相对于主要以硬盘为存储的squid来说要高效的多。它适合一些经常查询且变化不大的静态内容缓存。
Nginx 图片和静态文本给 varish 后端是WEB的8080端口
动态内容给后端WEB 后端是WEB的8080端口
这个架构要看服务器和存储内容,如果nginx不用做反向代理以支持后台诸多应用的话,那么单就nginx来说,利用proxy_cache模块也可以支持本地缓存。它缓存在硬盘上,性能和squid相差不大,但是稳定性和易用性要好的多。
3,安装varish:
1)创建用户和组,赋予权限
# useradd -g www www
# mkdir -p /var/vcache
# chown -R www:www /var/vcache
2)创建varnish日志目录并授权
# chmod +w /var/log/varnish
# chown -R www:www /var/log/varnish
3)编译安装varnish
# tar zxvf varnish-1.1.2.tar.gz
# cd varnish-1.1.2
# ./configure --prefix=/usr/local/varnish
# make && make install
4)创建并修改配置文件vi /usr/local/varnish/vcl/conf
backend default { #通过反向代理请求后端IP为192.168.0.5,80端口的WEB服务器,可以是本机,也可以是后台 .host = "192.168.0.151";
.port = "81";
}
acl purge { #允许这三个来源的IP通过PURGE方法清除缓存 "localhost";
"127.0.0.1";
"192.168.1.0"/24;
}
sub vcl_recv {
if (req.request == "PURGE") {
if (!client.ip ~ purge) {
error 405 "Not allowed."; #405错误显示 }
return(lookup);
}
if (req.http.host ~ "^blog.s135.com") {
set req.backend = default;
if (req.request != "GET" && req.request != "HEAD") {
return(pipe);
}
else {
return (lookup);
}
}
else {
error 404 "Not in cache"; #404错误显示 return(lookup);
}
}
sub vcl_hit {
if (req.request == "PURGE") {
set obj.ttl = 0s;
error 200 "Purged.";
}
}
sub vcl_miss {
if (req.request == "PURGE") {
error 404 "Not in cache.";
}
}
sub vcl_fetch {
if (req.request == "GET" && req.url ~ "/.(txt|js)$") {
set obj.ttl = 3600s; #对于txt和js缓存一个小时 }
else {
set obj.ttl = 30d; #其余的缓存一天 }
}
Varnish对HTTP协议中的GET、HEAD请求进行缓存,对POST请求透过,让其直接访问后端Web服务器。之所以这样配置,是因为POST请求一般是发送数据给服务器的,需要服务器接收、处理,所以不缓存;
5)启动ulimit -SHn 51200
/usr/local/varnish/sbin/varnishd -a :80 -b 192.168.0.151:81 -p thread_pool_max=1500 -p thread_pools=5 -p listen_depth=512 -w 1,10000,120
6)将访问日志写入访问文件/usr/local/varnish/bin/varnishncsa -n /var/vcache -w /var/log/varnish/varnish.log &
7)查看状态
访问主页
安装varish作为缓存和代理相关推荐
- openresty开发系列2--nginx的简单安装,正向、反向代理及常用命令和信号控制介绍...
openresty开发系列2--nginx的简单安装,正向.反向代理及常用命令和信号控制介绍 一.nginx的安装下载及编译安装 1.Nginx下载:nginx-1.13.0.tar.gz,下载到:/ ...
- npm/yarn修改全局安装路径和缓存路径。。。
前言 命令行界面打开方式 window + r -> cmd 建议 yarn 和 npm 的 全局安装位置 和 全局bin位置,最好设置在同一个盘符呢,这样 bin 目录中的 .cmd脚本文件中 ...
- Gerrit安装及使用Nginx反向代理
Gerrit安装及使用Nginx反向代理 简介 Gerrit做为Google用来管理Android代码版本的工具,是一种免费.开放源代码的代码审查软件,使用网页界面.本文主要介绍它的安装步骤. 一.准 ...
- linux上安装nginx及实现反向代理
nginx是高性能的http和反向代理的服务器.占用内存少,并发能力强. 主要作用有:反向代理.负载均衡.动静结合. 接下来我将描述一下如何安装nginx,同时实现反向代理功能. 1.安装nginx ...
- nginx 安装配置+清缓存模块安装
nginx 安装配置+清缓存模块安装 下载软件包 编译安装 内核参数优化 配置范例站点站点 修改nginx配置文件 Nginx 启动关闭 测试 经过一段时间的使用,发现 nginx 在并发与负载能力方 ...
- 编译安装nginx并实现反向代理负载均衡和缓存功能
一.编译安装nginx 1.下载 [root@ns1 ~]# wget http://nginx.org/download/nginx-1.10.0.tar.gz 2.解压 [root@ns1 ~]# ...
- [转]nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件
文章目录 前言 一.nginx简介 1. 什么是 nginx 和可以做什么事情 2.Nginx 作为 web 服务器 3. 正向代理 4. 反向代理 5. 负载均衡 6.动静分离 二.Nginx 的安 ...
- nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
文章目录 前言 一.nginx简介 1. 什么是 nginx 和可以做什么事情 2.Nginx 作为 web 服务器 3. 正向代理 4. 反向代理 5. 负载均衡 6.动静分离 二.Nginx 的安 ...
- 【爬虫】 Squid 3.5.20 安装与配置 高匿代理
Squid 介绍 Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据.也就是说,当一个用户象要下载一个主页时,它向Squid发出一个申请,要Squid替它 ...
最新文章
- pyspark使用ipython
- java线程 教程_Java多线程系列教程
- 营业额破千亿美元的亚马逊仍难令华尔街满意
- python停止线程池_详解python中Threadpool线程池任务终止示例代码
- python 安装 HTMLtestRunner(转)
- python 数据结构包括三方面_python数据结构
- 兆芯笔试题(2015)找反复数最多的字母的数量以及位置
- 计算机与科学 研究生考试内容,计算机科学与技术考研考哪些科目 备考技巧有哪些...
- error LNK2005: _sprintf 已经在 MSVCRTD.lib(MSVCR90D.dll) 中定义
- 微信小程序授权登录详细解析
- 资源篇(一)-在线抠图神器
- java 定时任务 执行次数_java起一个定时任务,在规定的时间内自动执行
- 程序员自我修改之读书学习
- 微信没有回车键怎么换行_微信打字怎么换行
- 【阿里云云计算工程师ACP认证】什么是ACP
- 流程设计建模方法:流程的需求梳理之流程级别梳理
- 达梦数据库的备份与恢复
- C语言:浙大版《C语言程序设计(第3版)》题目集 练习5-1 求m到n之和 (10 分)
- 2023年中央财经大学数量经济学考博必看上岸前辈复习经验分享
- Charles 抓包工具 报You may need to configure your browser or application to trust the Ch......错误
热门文章
- php和架构,结构和架构的区别是什么?
- 烟台大学计算机专业录取分数线,2017烟台大学录取分数线排行榜
- android如何看百分比版本,【JAVA】Android百分比布局
- 图像金字塔与resize函数
- 奇葩错误:“假缩进”(python专属)
- C++中的双冒号(::)
- cookie关键字_我遇过的最难的Cookie问题
- Go 分布式学习利器(7)-- 字符串
- C++ 函数参数 值传递与引用传递
- casperjs 安装试用