• Nnginx调优


    nginx调优:

    	main 	全局设置					所有区域都生效
    	server 	主机设置					
    	uptream	负载均衡服务器设置		设置后端服务器的
    	location	URL匹配特定位置的设置	匹配网页
    关系:
    	server继承main
    	location继承server
           upstream既不传也不继承
    

    调整内核参数:

    vim /etc/sysctl.conf  这里面调
    net.ipv4.tcp_max_tw_buckets = 6000             //时间等待计时器(坚持,保活,重传) net.ipv4.ip_local_port_range = 1024 65000        //开启随机端口的数量32768-65535 net.ipv4.tcp_tw_recycle = 1                 //时间等待计时器加速回收 net.ipv4.tcp_tw_reuse = 1                 //时间等待计时器复用 net.ipv4.tcp_syncookies = 1                //syn溢出用cook处理 net.core.somaxconn = 262144               //同时发起tcp的连接数量 net.core.netdev_max_backlog = 262144          //网络收口接包速度,表示列队长度 net.ipv4.tcp_max_orphans = 262144            //设置系统中有多连接同时连接到我的,防止简单的ddos net.ipv4.tcp_max_syn_backlog = 262144         //尚未收到客户端确认消息的连接的请求,128M内存=1024 net.ipv4.tcp_synack_retries = 1             //表示内核放弃连接之前,syn+ack的包的总量 net.ipv4.tcp_syn_retries = 1              //放弃连接之前syn的总量 net.ipv4.tcp_fin_timeout = 1              //最后时间等待计时器的超时时间 net.ipv4.tcp_keepalive_time = 30          //消息发送的频度(单位:小时)

    防盗链:

    在server模块下
    第一种方法:(zip和rar是必须写的)
    	location ~* .(jpg|png|gif|flv|zip|rar){
    		valid_referers none blocked *.han.com *.han.cn;
    		if ($invalid_referer) {
    		rewrite ^/ http://www.han.com/img/error.gif;//当引用了我的图片就把你引到我的错误的图片
    		#return 403; //地址重写
    	}
    }
    第二种方法:
    	location /images {
    		root /web/www/han.com
    		vaild_referers none blocked *.han.com *.han.cn;
    		if ($invalid_referer) {
    		return 403;
    	} 
    }
    

    Fastcgi调优:

      fastcgi的调优必须在http模块里面!!!
       fastcgi_cache_path /usr/local/nginx/fastcgi_cache levels=1:2 keys_zone=TEST:10minactive=5m;  ///usr/local/nginx/fastcgi_cache 硬盘路径 leves 目录结构等级 keys_zone关键字存储的区域 inactive非活动的删除时间分钟
       fastcgi_connect_timeout 300;     连接到后端的超时时间(防火墙new包)
       fastcgi_send_timeout 300;      完成握手之后已经建立连接,传送请求的时间
       fastcgi_read_timeout 300;      后端服务器收到的应答的时间,没有回应
       fastcgi_buffer_size 64k;       应答信息的第一个应答包头,第二个包开始才是数据
       fastcgi_buffers 4 64k;        应答请求,请求页面的大小。PHP产生的页面256k把这个数据分成4个64k来存储; 300k剩下的44k放到fastcgitemp。取中上值
       fastcgi_busy_buffers_size 128k;   当繁忙的时候临时开一个空间是前面的2倍就可以
       fastcgi_temp_file_write_size 128k;  写入缓存文件时缓存快的大小
       指定页面代码的缓存时间: 
         fastcgi_cachek TEST;        缓存名称 表示开启 
         fastcgi_cache_valid 200 302 1h;   指定应答代码的缓存时间
         fastcgi_cache_valid 301 1d;     指定应答代码的缓存时间
         fastcgi_cache_valid any 1m;     指定应答代码的缓存时间
    

    proxy四层代理:动态调优

    location / {
        proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;
        proxy_redirect off;
        proxy_set_headeer HOST $host;                 #设置后端服务器的真实IP地址
        proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded_For &proxy_add_x-forwarded_for;
         client_body_buffer_size 128k;                   #页面缓冲区的大小,本地保存的大小
        proxy_connect_timeout 90;                   后端服务器发起握手等候响应的时间
        proxy_rend_timeout 90;                     建立连接后等待后端服务器响应时间/后端等候处理的时间
         proxy_sead_timeout 90;                     规定时间内后端服务器必须响应,否则断开
        proxy_buffer_size 4k;
        proxy_buffers 4 32;                      缓冲区个数和大小
        proxy_busy_buffers_size 64k;                 系统繁忙时buffer的临时大小,官方要求proxy_buffers*2
        proxy_temp_file_write_size 64;                 proxy临时文件的大小
    }
    

      

    Gzip:

    #传递数据的时候需要打个包,这样会让零碎的数据打包成一个包,增加我们的传输速度
    #--http_gzip_static_module   加这个模块就可以实现数据的整合和打包
        gzip  on;
            gzip_min_length 1k;			#设置压缩的页面你的最小字节数(公司页面最小值就行)
            gzip_buffers 4 16k;			#表示申请4个16k空间来压缩的缓存
            gzip_http_version 1.1;		     #用来识别http的版本
            gzip_comp_level 2;			#用来指定gzip压缩级别(1最小压缩比率 效率高,9最大压缩比率,效率低)
            gzip_types text/plain application/x-javascript text/css application/xml;	#用来指定压缩类型(默认使用的html类型)
            gzip_vary on;				#让前端缓存服务器缓存,经过压缩后的数据(Varnish,Nginx-cache,Squid)
    

     

    events模块:

    events {
    	worker_connections  8192;		#nginx 中每个进程最大的处理连接数量 只能是2的次方数 
    	use epoll				#使用epoll网络模型
    
    }
         网络模型:
    	epoll:linux内核为处理大批量文件描述符
    	select poll	标准模式
    	kqueue poll	高性能模式	BSD用kqueue	linux用poll
    	rtsin /dev/poll	高性能模式
    

     

     

  • 相关阅读:
    sqlplus时报Linux-x86_64 Error: 13: Permission denied
    thrift之TTransport层的缓存传输类TBufferedTransport和缓冲基类TBufferBase
    Java实现 蓝桥杯 算法提高 新建Microsoft world文档
    Java实现 蓝桥杯 算法提高 新建Microsoft world文档
    Java实现 蓝桥杯 算法提高 快乐司机
    Java实现 蓝桥杯 算法提高 快乐司机
    Java实现 蓝桥杯 算法提高 队列操作
    Java实现 蓝桥杯 算法提高 队列操作
    Java实现 蓝桥杯 算法提高 文本加密
    Java实现 蓝桥杯 算法提高 合并石子
  • 原文地址:https://www.cnblogs.com/dzs-dlam/p/7985243.html
Copyright © 2020-2023  润新知