nginx+memchaced

使用Memcache

<br\>
Memcache是一个通用的内存缓存系统。 它通常用于加速缓慢的数据访问。 NGINXmemcached模块提供各种指令,可以配置为直接访问Memcache提供内容,从而避免对上游服务器的请求。
除了指令之外,模块还创建 memcachedkey使Memcache memcachedkey变量,用于执行高速缓存查找。在使用Memcache查找之前,必须在memcached_key变量中设置一个值,该变量根据请求URL确定。

memcached_pass

<br\>
此指令用于指定memcached服务器的位置。 地址可以通过以下任意方式指定:
•域名或IP地址,以及可选端口
•使用带unix:前缀的的Unix域套接字
•使用NGINX upstream指令创建的一组服务器
该指令仅在NGINX配置的location和location if中使用。 如下例子:

  1. location /myloc/{
  2.    set  memachedkey memachedkeyuri;
  3.    memcached_pass localhost:11211;
  4.    }

memcached_connect_timeout / memcached_ send_timeout / memcached_read_timeout

<br\>
memcached connect_timeout指令设置在NGINX和memcached服务器之间建立连接的超时。
memcached_send_timeout指令设置将请求写入memcached服务器的超时。 memcached_read_timeout指令设置从memcached服务器读取响应的超时。
所有指令的默认值为60秒,可在NGINX配置的http,server和location区块下使用。 如下例子:

  1. http{
  2.    memcached_send_timeout 30s;
  3.    memcached_connect_timeout 30s;
  4.    memcached_read_timeout 30s;
  5.    }

memcached_bind

<br\>
此指令指定服务器的哪个IP与memcached连接,默认为关闭,即不指定,那么Nginx会自动选择服务器的一个IP用来连接。

完整示例

<br\>

  1. server{
  2.    location /python/css/ {
  3.    alias "/code/location/css/";
  4.    }
  5.    location /python/ {
  6.    set  memcachedkey" memcachedkey"request_method$request_uri";
  7.    charset utf-8;
  8.    memcached_pass 127.0.0.1:11211;
  9.    error_page 404 502 504 = @pythonfallback;
  10.    default_type text/html;
  11.    }
  12.    location @pythonfallback {
  13.    rewrite ^/python/(.*) /$1 break;
  14.  
  15.    proxy_pass http://127.0.0.1:5000;
  16.    proxy_set_header X-Cache-Key " requestmethod requestmethodrequest_uri";
  17.    }
  18.    # Rest NGINX configuration omitted for brevity
  19. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值