nginx proxy_cache 多盘负载均衡
来源:互联网 发布:星野ナミ 知乎 编辑:程序博客网 时间:2024/06/16 10:47
nginx只有在1.7.0以上的版本才支持该功能,openresty什么版本不知道,不过最新版肯定是支持的,如果配置没问题缺一直失败的小伙伴考虑版本问题。
现在,假设我们有一台服务器,挂了3块硬盘,我们希望把该服务器用作“缓存代理”,缓存后端服务器的全部响应信息。预期的缓存数据量远大于可用的内存。它实际上是我们个人CDN的一个缓存节点。毫无疑问,在这种情况下,最重要的事情是发挥硬盘的最大性能。
我们的选择之一是配置一个RAID阵列。这种方法毁誉参半,现在,有了NGINX,我们可以有其他的选择:
# 我们假设每块硬盘挂载在相应的目录中:/mnt/disk1、/mnt/disk2、/mnt/disk3proxy_cache_path /mnt/disk1 levels=1:2 keys_zone=cache_1:256m max_size=1024G use_temp_path=off;proxy_cache_path /mnt/disk2 levels=1:2 keys_zone=cache_2:256m max_size=1024G use_temp_path=off;proxy_cache_path /mnt/disk3 levels=1:2 keys_zone=cache_3:256m max_size=1024G use_temp_path=off;
split_clients $request_uri $disk { 33.3% 1; 33.3% 2; * 3;}location / { proxy_pass http://backend; proxy_cache_key $request_uri; proxy_cache cache_$disk;}
在这份配置中,使用了3个独立的缓存,每个缓存专用一块硬盘,另外,3个独立的线程池也各自专用一块硬盘。
缓存之间(其结果就是磁盘之间)的负载均衡使用split_clients模块,
split_clients
非常适用于这个任务。在 proxy_cache_path指令中设置
use_temp_path=off
,表示NGINX会将临时文件保存在缓存数据的同一目录中。这是为了避免在更新缓存时,磁盘之间互相复制响应数据。
阅读全文
0 0
- nginx proxy_cache 多盘负载均衡
- nginx负载均衡【nginx】
- nginx配置负载负载均衡
- nginx+多resin进程实现负载均衡
- nginx+多resin进程实现负载均衡
- Nginx+多个fastcgi实现负载均衡
- nginx+多resin进程实现负载均衡
- nginx配置实现多组负载均衡
- nginx实现多个tomcat负载均衡
- nginx负载均衡
- Nginx负载均衡
- Nginx 负载均衡 简介
- nginx 负载均衡配置
- Nginx负载均衡
- nginx 负载均衡测试
- Nginx实现负载均衡
- Nginx负载均衡
- 解析Nginx负载均衡
- 关于JavaScript中apply与call的用法意义及区别(转)
- [LeetCode] House Robber II 求循环数组中元素两两不相邻的子序列最大和
- 数据库基础
- 回头看Android之handler,message,messagequeue,looper
- boost库做什么用呢?
- nginx proxy_cache 多盘负载均衡
- ajax post 后台收不到数据
- 357. Count Numbers with Unique Digits
- java账号登录时的验证
- 预览页面中的图片。并且图片的位置始终处在屏幕中间
- Java 8 foreach
- 在centos6环境下安装TensorFlow
- JS数组中元素数字和字符串之间的转换
- jquery选择器整理