为了性能测试,放弃部分功能,保证绝对性能。 注意可能不能用于生产环境。

下面开始简单讲解。

1. worker_processes 工作线程数. 发现不用太多 一定不能多于操作系统的CPU核数.

2. events 建议使用 epoll, 现在最佳的io模型

3. http 里面 sendfile on 可以使用 zero copy  提高性能.

4. gzip on 使用压缩,提高性能.

5. client等配置,提高缓存应用效果.

6. proxy 相关配置, 避免出现因为后端访问超时出现各种异常问题.

7. upstream server 注意可以使用weight以及max_fails 参数. 避免服务器FGC时因为STW造成响应不及时出现异常错误提示.

8. ip_hash 因为只使用前面三段ip地址容易出现负载不均衡的现象, 性能测试建议去掉, 功能测试可以使用外加sticky模式.

9. server段里面 listen 没什么说的保证正常使用即可.

10. 如下内容保证可以传递给后端服务正确的客户端信息 以及不知道是不是重复的设置

注意 如果使用 $host 变量,必须添加端口, 并且与listen的端口一致, 应该也可以使用 http_host 内部变量,可以不添加端口信息.

         proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_set_header Host $host:5200;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

11. access_log off 破釜沉舟, 提高性能. 发现不关闭log 一小时能够产生十几G的日志, 估计会拖慢nginx的相应时间, 没办法这些内容暂时就放弃了.

12. 其他内容一切从简 .

如下就是自己的一个简单的例子 可能还需要继续完善. 短暂进行学习mark一下. 希望高手指正.

worker_processes  44;
worker_rlimit_nofile 65535;
events {
use epoll;
worker_connections 65535;
}
http {
default_type application/octet-stream;
sendfile on;
gzip on; client_header_buffer_size 64k;
large_client_header_buffers 4 64k;
client_body_buffer_size 20m;
gzip_buffers 16 8k;
proxy_buffer_size 64k;
proxy_buffers 4 128k;
proxy_busy_buffers_size 256k;
keepalive_timeout 240;
proxy_connect_timeout 600s;
proxy_send_timeout 1200;
proxy_read_timeout 1200; upstream webservers {
#ip_hash;
server 127.0.0.1:5201 weight=10 max_fails=10;
server 127.0.0.1:5202 weight=10 max_fails=10;
server 127.0.0.1:5203 weight=10 max_fails=10; } server {

listen 5200;
         server_name localhost;
         root /usr/share/nginx/html;
         proxy_buffer_size 128k;
         proxy_buffers 4 256k;
         proxy_busy_buffers_size 256k;
         proxy_set_header Host $host:5200;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         location /
          {
            access_log off;
            add_header 'Access-Control-Allow-Origin' "$http_origin";
            add_header 'Access-Control-Allow-Credentials' "true";
            proxy_pass http://webservers;
           }
       error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        root html;
       }
    }   
}

 

Nginx 大并发 调优设置的更多相关文章

  1. Tomcat6 一些调优设置内存和连接数

    Tomcat6 一些调优设置内存和连接数 博客分类: java TomcatJVMLinux应用服务器网络应用  公司的一个服务器使用Tomcat6默认配置,在后台一阵全点击服务器就报废了,查了一下就 ...

  2. MySQL并发调优和IO调优

    一.myisam的IO调优1.myisam通常在每次写入后把索引的改变刷写到磁盘上.所以批处理通常会更快点.做到这点,可以通过LOCK TABLES,他可以把写入控制到对表解锁.还可以用delay_k ...

  3. jmeter --JVM调优设置

    JMeter用户可根据运行的计算机配置,来适当调整JMeter.bat中的JVM调优设置,如下所示: set HEAP=-Xms512m -Xmx512m set NEW=-XX:NewSize=12 ...

  4. Oracle 内存参数调优设置

    Oracle 数据库系统中起到调节作用的参数叫初始化参数,数据库管理员根据实际情况需要适当调整这些 初始化参数以优化Oracle系统. 1 主要系统参数调优介绍 2 系统内存参数的分配 2.1 Ora ...

  5. nginx安装以及调优

    目录: 1.安装nginx 2.配置nginx 3.调优nginx 4.性能测试 ps:为了方便,文档使用docker容器来操作的. 1.安装nginx 1.1 启动容器.download nginx ...

  6. centos 7上nginx+uwsgi 性能调优

    上一章将nginx +uwsgi搭建起来,将keystone挂载后面.但是发现一个问题,如果http请求达到一定量后,nginx直接返回502.这让需要部署大规模openstack集群的我很是头疼,比 ...

  7. Nginx + Linux 性能调优

    Nginx以高性能负载均衡.缓存和web服务器出名,支撑着世界上繁忙网站中的40%.大多数使用场景下,Nginx和Linux系统的默认配置表现较好,但是仍有必要做一些调优以期达到最佳性能. 这篇文章讨 ...

  8. Nginx简单性能调优

    Nginx默认没有开启利用多核CPU (忍不住吐槽,然怪总感觉服务器性能没充分发挥), 我们可以通过增加worker_cpu_affinity配置参数来充分利用多核CPU.CPU是任务处理,计算最关键 ...

  9. Nginx基本参数调优

    Nginx基本参数 #运行用户 user nobody; #worker进程的个数:通常应该为物理CPU核数减1: #可以为”auto”,实现自动设定(worker_processes  auto) ...

  10. Etl之HiveSql调优(设置map reduce 的数量)

    前言: 最近发现hivesql的执行速度特别慢,前面我们已经说明了left和union的优化,下面咱们分析一下增加或者减少reduce的数量来提升hsql的速度. 参考:http://www.cnbl ...

随机推荐

  1. 详解GaussDB(DWS)的query_band负载识别与应用

    摘要:query_band是一个会话级别(session)的GUC参数,本身是字符串类型,支持任意形式字符组合. 本文分享自华为云社区<GaussDB(DWS)的query_band负载识别与应 ...

  2. 13个QA带你了解线上压测的知识点

    摘要:设计一个线上压测系统能让我们学习到多少东西?这13个问题看你能否搞定. 本文分享自华为云社区<设计一个线上压测系统能让我们学习到多少东西?13个问题看你能否搞定>,作者:breakD ...

  3. 认识Java的整形数据结构

    摘要:java中一切都是对象,为什么int不用创建对象实例化,而可以直接使用? 本文分享自华为云社区<[Java]对基本类型-整型数据结构的认识>,作者: huahua.Dr . 整型数据 ...

  4. 探索SaaS产业发展新机遇|鲁班会贵安首秀圆满收官

    摘要:2021年12月28日-12月29日,华为云·核心伙伴开发者训练营(第八期)-SaaS应用构建实践专场在华为贵安数据中心召开. 当前,在数字化新兴技术和数字化转型的热潮的引领下,SaaS业务应用 ...

  5. MetaGPT day01: MetaGPT作者代码走读、软件公司初始示例

    LLM发展历史 - 2013年word2vec提出,但效果不好 - 2017年Transformer结构提出,降低网络复杂度 - 2018年BERT预训练语言模型效果显著提升 - 2019年GPT-3 ...

  6. 神经网络优化篇:详解动量梯度下降法(Gradient descent with Momentum)

    动量梯度下降法 还有一种算法叫做Momentum,或者叫做动量梯度下降法,运行速度几乎总是快于标准的梯度下降算法,简而言之,基本的想法就是计算梯度的指数加权平均数,并利用该梯度更新的权重. 例如,如果 ...

  7. 【HZERO】班翎工作流

    班翎工作流 工作流流程 流程分类定义 接口管理 long类型写0 字符串写空 流程定义[画流程图] 人工节点-添加审批人规则 空-全局事件-选回调接口 我的待办 流程平台-我参与的流程 发起流程:wo ...

  8. WEB端播放华为海康大华视频方案

    WEB端播放华为海康大华视频方案 类似标题:谷歌浏览器播放华为海康大华视频方案 方案 以下方案相当于给需要播放视频的WEB系统做了一个专用的浏览器,通过专用浏览器的CS客户端组件播放视频,当然,这个专 ...

  9. 深度学习基础课: “判断性别”Demo需求分析和初步设计(下2)

    大家好~我开设了"深度学习基础班"的线上课程,带领同学从0开始学习全连接和卷积神经网络,进行数学推导,并且实现可以运行的Demo程序 线上课程资料: 本节课录像回放1 本节课录像回 ...

  10. java使用递归及迭代方式实现前序遍历 中序遍历 后序遍历 以及实现层序遍历

    本文为博主原创,转载请注明出处: 目录: 一.快速理解前序,中序,后序遍历的区别 二.使用递归的方式实现前序,中序,后序遍历 三. 使用迭代的方式实现前序 中序 后序遍历 四.层序遍历 一.快速理解前 ...