压测,限流以及调优 
                                                    
                        
                    
                    
  
                    
                    背景
配合银行活动,确保活动正常进行。
环境
8核32G,CentOs7
涉及到的几个方面
A 表示默认配置,B 表示调优配置
PHP调优
php调优,经过对比测试,开启opcache扩展能够提升1倍多的性能(B=2.xA)。opcache本质上是缓存,是缓存就存在过期时间和新建,有一些事项需要注意。
- 不要在高峰期发布代码
- 手动刷新
opcache相关命令
//查看是否配置opcache
php -m
//配置cli模式
opcache.enable_cli=1
//查看 opcache 是否生效
php --ri "Zend OPcache"
...
Opcode Caching => Up and Running //这样才生效
...PHP-FPM调优
php-fpm调优,主要涉及到的是pm配置项的配置。会有一些提升。
pm=static
pm.max_children=1000php-fpm进程数设置参考1
php-fpm进程数设置参考1
NGINX限流配置
nginx限流配置。在压测的情况下,确定机器的性能上限,找到限流的指标。
http{
    //$binary_remote_addr 按IP限制
    //zone=key:size 分配内存,存储IP地址,1.6W IP≈1M
    //rate=10r/s 每秒10个请求
    limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;
    server{
        limit_req zone=mylimit burst=50 nodelay;
        error_page 503 /503;//限流默认返回503,可配置,范围400~599
        location /503 {
            limit_req_log_level warn;//默认info,记录的信息太多
            default_type application/json;
            return 200 '{"code":"53000","message":"网络繁忙,请稍后再试"}';
        }
    }
}最终的效果
限制以内的请求正常处理,超过限制的,弹出”网络繁忙,请稍后再试”的提示信息。
本作品采用《CC 协议》,转载必须注明作者和本文链接
 
           城里的野山参 的个人博客
 城里的野山参 的个人博客
         
             
             
           
           关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: