lamp架构nginx高效缓存

Posted dezasseis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lamp架构nginx高效缓存相关的知识,希望对你有一定的参考价值。

一、设置高速缓存前

传统缓存策略

  • 将测试页放置到openresty中nginx的默认发布目录下
  • 压力测试
    ab -c10 -n5000 http://172.25.2.1/example.php

二、设置高速缓存后

高效缓存策略

当所请求的uri以“.php”结尾时,首先到memcache中查询有没有以 u r i uri uriargs为key的数据,如果有则直接返回;否则,执行location的逻辑,如果返回的http状态码为200,则在输出前以 u r i uri uriargs为key,将输入结果存入memcache。

vim /usr/local/openresty/nginx/nginx.conf

upstream memcache 
        server 127.0.0.1:11211;
        keepalive 512;
        
location /memc 
        internal;			
        memc_connect_timeout 100ms;
        memc_send_timeout 100ms;
        memc_read_timeout 100ms;
        set $memc_key $query_string;	
        set $memc_exptime 300;		
        memc_pass memcache;
        

location ~ \\.php$ 
            set $key $uri$args;		
            srcache_fetch GET /memc $key;	   %现在memcache中找,如果有则直接返回,如果没有再通过fastcgi去后端找
            srcache_store PUT /memc $key;      %将在后端找到的值存储到memcache中,下次再请求的时候可以直接返回       
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;
        


/usr/local/openresty/nginx/sbin/nginx -t 检测是否有语法错误
/usr/local/openresty/nginx/sbin/nginx -s reload 重新加载

  • 压力测试
    ab -c10 -n5000 http://172.25.2.1/example.php

以上是关于lamp架构nginx高效缓存的主要内容,如果未能解决你的问题,请参考以下文章

lamp架构nginx高效缓存

大数据学习总结记录—分布式缓存-Memacache

lamp架构nginx限流配置(自动索引缓存日志轮询与禁用部分记录目录和文件限制中文乱码)重定向防盗链

lamp架构nginx限流配置(自动索引缓存日志轮询与禁用部分记录目录和文件限制中文乱码)重定向防盗链

lamp架构nginx限流配置(自动索引缓存日志轮询与禁用部分记录目录和文件限制中文乱码)重定向防盗链

lamp架构nginx限流配置(自动索引缓存日志轮询与禁用部分记录目录和文件限制中文乱码)重定向防盗链