- 浏览: 60635 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (93)
- java (3)
- ios (9)
- wp (15)
- android (0)
- js (1)
- 服务器 (0)
- db (0)
- linux (1)
- python (0)
- xcode (0)
- ide (2)
- maven (0)
- spring (0)
- sql (0)
- 第三方 (1)
- nexus (0)
- nginx (11)
- tomcat (0)
- jenkins (0)
- zookeeper (1)
- git (1)
- svn (0)
- uml (0)
- redis (4)
- activemq (1)
- flume (0)
- kafka (0)
- mysql (1)
- memcached (0)
- mybatis (0)
- mac (0)
- mongo (1)
- docker (6)
- cache (0)
- jvm (0)
- markdown (0)
- springboot (24)
- mycat (3)
- LTS (3)
- 运维 (0)
- opts (1)
- netty (1)
- tcc (0)
- ffmpeg (2)
- 直播 (6)
- cxf (0)
- nodejs (0)
- storm (0)
- elasticjob (0)
- php (0)
最新评论
http{
proxy_connect_timeout 5;
proxy_read_timeout 60;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
proxy_temp_path /home/temp_dir;
proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:50m inactive=20m max_size=30g;
}
location /gou/detail-id-116 {
##缓存
index index.html index.htm index.php;
#被请求3次以上时才缓存
proxy_cache_min_uses 3;
#使用名称为cache_one的缓存 如上面配置的proxy_cache_path keys_zone=cache_one
proxy_cache cache_one;
#缓存有效期 proxy_cache_valid any 1d; 任何 有效期1天
proxy_cache_valid 200 302 1h;
proxy_cache_key $host$uri$is_args$args;
proxy_pass http://...;
#不处理后端服务器返回的指定响应头,作用就是能够缓存动态页面,比如.php的页面,如果不加这一行就只能缓存静态的页面内容了
proxy_ignore_headers "Cache-Control" "Expires" "Set-Cookie";
#-1 表示不缓存
expires 30d;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#如果任何一个参数值不为空,或者不等于0,nginx就不会查找缓存,直接进行代理转发
#proxy_cache_bypass $cookie_nocache $arg_nocache$arg_comment;
#proxy_cache_methods GET HEAD POST;
}
========================================================
proxy_cache_path有两个必填参数,第一个参数为 缓存目录,第二个参数keys_zone指定缓存名称和占用内存空间的大小(注:示例中的10m是对内存中缓存内容元数据信息大小的限制,如果想限制缓存总量大小,需要用 max_size 参数)
如:
// 缓存目录:/data/nginx/cache
// 缓存名称:one
// 缓存占用内存空间:10m
// 加载器每次迭代过程最多执行300毫秒
// 加载器每次迭代过程中最多加载200个文件
// 缓存硬盘空间最多为 200m
proxy_cache_path /data/nginx/cache keys_zone=one:10m loader_threshold=300
loader_files=200 max_size=200m;
========================================================
1) nginx先把请求地址/1.png用md5进行哈希,得到e0bd86606797639426a92306b1b98ad9
md5的参数就是上面的配置中:
proxy_cache_key
值,如md5("www.xxx.com/gou/detail-id-116");
2) level=1:2就是把最后一位数9拿出来建一个目录,然后再把9前面的2位建一个目录,最后把刚才得到的这个缓存文件放到9/ad目录中。
同样的方法推理,如果level=1:1,那么缓存文件的路径就是/usr/local/nginx/cache/9/d/e0bd86606797639426a92306b1b98ad9
========================================================
memcached
memcached connect_timeout:在NGINX和memcached服务器之间建立连接的超时。
memcached_send_timeout:将请求写入memcached服务器的超时。 memcached_read_timeout:从memcached服务器读取响应的超时。
========================================================
http{
memcached_send_timeout 30s;
memcached_connect_timeout 30s;
memcached_read_timeout 30s;
server{
location /python/ {
set memcachedkey"memcachedkey"request_method$request_uri";
charset utf-8;
memcached_pass 127.0.0.1:11211;
#error_page 404 502 504 = @pythonfallback;
default_type text/html;
}
location @pythonfallback {
rewrite ^/python/(.*) /$1 break;
proxy_pass http://127.0.0.1:5000;
proxy_set_header X-Cache-Key "requestmethodrequestmethodrequest_uri";
}
}
}
proxy_connect_timeout 5;
proxy_read_timeout 60;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
proxy_temp_path /home/temp_dir;
proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:50m inactive=20m max_size=30g;
}
location /gou/detail-id-116 {
##缓存
index index.html index.htm index.php;
#被请求3次以上时才缓存
proxy_cache_min_uses 3;
#使用名称为cache_one的缓存 如上面配置的proxy_cache_path keys_zone=cache_one
proxy_cache cache_one;
#缓存有效期 proxy_cache_valid any 1d; 任何 有效期1天
proxy_cache_valid 200 302 1h;
proxy_cache_key $host$uri$is_args$args;
proxy_pass http://...;
#不处理后端服务器返回的指定响应头,作用就是能够缓存动态页面,比如.php的页面,如果不加这一行就只能缓存静态的页面内容了
proxy_ignore_headers "Cache-Control" "Expires" "Set-Cookie";
#-1 表示不缓存
expires 30d;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#如果任何一个参数值不为空,或者不等于0,nginx就不会查找缓存,直接进行代理转发
#proxy_cache_bypass $cookie_nocache $arg_nocache$arg_comment;
#proxy_cache_methods GET HEAD POST;
}
========================================================
proxy_cache_path有两个必填参数,第一个参数为 缓存目录,第二个参数keys_zone指定缓存名称和占用内存空间的大小(注:示例中的10m是对内存中缓存内容元数据信息大小的限制,如果想限制缓存总量大小,需要用 max_size 参数)
如:
// 缓存目录:/data/nginx/cache
// 缓存名称:one
// 缓存占用内存空间:10m
// 加载器每次迭代过程最多执行300毫秒
// 加载器每次迭代过程中最多加载200个文件
// 缓存硬盘空间最多为 200m
proxy_cache_path /data/nginx/cache keys_zone=one:10m loader_threshold=300
loader_files=200 max_size=200m;
========================================================
1) nginx先把请求地址/1.png用md5进行哈希,得到e0bd86606797639426a92306b1b98ad9
md5的参数就是上面的配置中:
proxy_cache_key
值,如md5("www.xxx.com/gou/detail-id-116");
2) level=1:2就是把最后一位数9拿出来建一个目录,然后再把9前面的2位建一个目录,最后把刚才得到的这个缓存文件放到9/ad目录中。
同样的方法推理,如果level=1:1,那么缓存文件的路径就是/usr/local/nginx/cache/9/d/e0bd86606797639426a92306b1b98ad9
========================================================
memcached
memcached connect_timeout:在NGINX和memcached服务器之间建立连接的超时。
memcached_send_timeout:将请求写入memcached服务器的超时。 memcached_read_timeout:从memcached服务器读取响应的超时。
========================================================
http{
memcached_send_timeout 30s;
memcached_connect_timeout 30s;
memcached_read_timeout 30s;
server{
location /python/ {
set memcachedkey"memcachedkey"request_method$request_uri";
charset utf-8;
memcached_pass 127.0.0.1:11211;
#error_page 404 502 504 = @pythonfallback;
default_type text/html;
}
location @pythonfallback {
rewrite ^/python/(.*) /$1 break;
proxy_pass http://127.0.0.1:5000;
proxy_set_header X-Cache-Key "requestmethodrequestmethodrequest_uri";
}
}
}
发表评论
-
nginx:socker转发
2017-10-16 17:07 6391.安装nginx,stream模块默 ... -
ffmpeg:视频直播流
2017-09-26 16:32 1983基于nginx:rtmp和ffmpeg搭建 测试视频流直播 通 ... -
nginx:rtmp
2017-09-26 14:50 824rtmp(Real Time Messaging Protoc ... -
nginx:nginx+lua+redis构建高并发应用
2017-08-08 09:51 1139一.安装lua # apt-get install lua5. ... -
nginx:ssl
2017-07-19 15:28 456生成证书 可以通过以下步骤生成一个简单的证书: 首先,进入你 ... -
nginx:防盗链
2017-07-19 11:00 454防盗链: 举个例子:有时候我们从一个网站,比如腾讯,转载了一篇 ... -
nginx:loadBalance
2017-07-18 10:32 338nginx负载均衡 http { #include ... -
nginx:vhost
2017-07-18 10:36 486nginx配置多个vhost 1.进入配置安装目录 cd /u ... -
nginx tomcat负载均衡
2017-01-09 10:19 0负载均衡:多台服务器 ... -
nginx:基于的keepalived高可用方案
2017-08-07 09:59 461keepalived的作用是检测服务器的状态,如果有一台w ... -
nginx
2016-05-05 11:04 0NGINX ///////////////////////// ... -
nginx:前后端分离解决跨域问题
2017-07-18 10:40 1419============================= l ... -
nginx mac机
2015-07-09 17:44 0nginx /////////////////// ... -
nginx 52配置
2015-07-09 17:43 0# user nginx nginx; worker ... -
mac下nginx配置
2015-05-08 13:52 0============================= ...
相关推荐
Nginx:Nginx缓存机制与优化.docx
此外,还可以与Redis、Memcached等缓存服务协同工作,提升网站性能。 通过《实战Nginx:取代Apache的高性能Web服务器》这本书,读者不仅可以掌握Nginx的基本操作,还能学习到如何利用Nginx构建高效、稳定、安全的...
4. 反向代理功能:Nginx可以作为反向代理服务器,改善客户端和服务器之间的通信,提供负载均衡、缓存静态内容等功能。 5. 静态内容处理:Nginx对静态内容的处理非常高效,能够快速地服务于静态文件,如图片、CSS、...
### Nginx常见错误及其解决方法 #### 一、启动错误:`sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory` **问题描述**: 在尝试启动...
1. 静态文件缓存:通过配置expires指令,Nginx可以设置静态资源的过期时间,利用客户端缓存减少服务器压力。 2. 静态文件目录:在配置文件中指定静态文件目录,Nginx会直接返回对应的文件,无需经过后端应用服务器。...
2.缓存:Nginx能够缓存动态内容,以提高性能。 3.微服务支持:Nginx可以支持微服务架构,与服务发现和注册中心配合使用。 知识点十:Nginx的未来趋势 Nginx在不断更新和优化中,其未来趋势可能包括: 1.持续优化...
nginx缓存教程: 缓存API接口的返回结果,下次再调用API时,直接从缓存中取出上次的结果
《决战Nginx系统卷:高性能Web服务器详解与运维》 的最后一部分是关于Nginx使用缓存技术的方法,共列举了Nginx使用的五大缓存,特别是广泛使用的代理缓存、Memcached和Varnish,另外对于Memcached服务器的使用贯穿...
7. **缓存机制**:讨论Nginx的缓存功能,如何设置缓存策略,提高响应速度,减轻后端服务器压力。 8. **日志管理**:学习如何配置Nginx的日志记录,分析访问日志,进行性能监控和问题排查。 9. **错误页面定制**:...
陶辉可能会分享一些最佳实践,如配置优化、缓存策略、日志管理和性能监控等方面的知识,帮助读者提升Nginx的运行效率。 《深入理解Nginx:模块开发与架构解析》还可能包含一些实战案例,让读者能够在实践中巩固理论...
此外,Nginx的内存管理机制、缓存策略、日志记录等功能也会有所涉及。 在实际应用中,Nginx常用于负载均衡,通过round-robin、IP哈希、URL哈希等多种策略分配请求到不同的后端服务器,保证服务的高可用性。此外,...
《决战Nginx系统卷:高性能Web服务器详解与运维》 的最后一部分是关于Nginx使用缓存技术的方法,共列举了Nginx使用的五大缓存,特别是广泛使用的代理缓存、Memcached和Varnish,另外对于Memcached服务器的使用贯穿...
本书的最后一部分是关于Nginx使用缓存技术的方法,共列举了Nginx使用的五大缓存,特别是广泛使用的代理缓存、Memcached和Varnish,另外对于Memcached服务器的使用贯穿了整套书。在本书中着重讲述了它的协议、原理...
本书的最后一部分是关于Nginx使用缓存技术的方法,共列举了Nginx使用的五大缓存,特别是广泛使用的代理缓存、Memcached和Varnish,另外对于Memcached服务器的使用贯穿了整套书。在本书中着重讲述了它的协议、原理...
- Nginx的静态资源缓存能力,可以显著提高网站响应速度,减轻后端服务器压力。 - 缓存控制:包括缓存过期策略、缓存刷新和缓存命中率优化。 4. **SSL/TLS安全** - HTTPS配置:如何在Nginx中启用SSL,配置证书和...