linux + nginx 的配置优化
linux 关于TCP/IP 的优化配置 配置文件/etc/sysctl.conf 修改完文件生效的命令 /sbin/sysctl -p
如下是总结的配置内容及说明
net.ipv4.conf.all.rp_filter=
net.ipv4.conf.default.rp_filter=
net.ipv4.conf.default.arp_announce = # 直接路由DR模式下要求arp_announce参数要求配置为2
net.ipv4.conf.lo.arp_announce=
net.ipv4.conf.all.arp_announce=
fs.file-max = # 打开文件句柄的数量
net.ipv4.tcp_tw_reuse = # 表示开启重用 允许TIME-WAIT sockets重新用于新的TCP连接
net.ipv4.tcp_keepalive_time = # 启用keepalive,tcp发送keepalive消息的频度
net.ipv4.tcp_fin_timeout = # 表示套接字FIN-WAIT-2状态超时时间
net.ipv4.tcp_tw_recycle= # 表示开启TCP连接中TIME-WAIT sockets的快速回收
net.ipv4.tcp_max_tw_buckets = # 系统同时保持TIME_WAIT套接字的最大数量对于nginx 设置5000-
net.ipv4.ip_local_port_range = # 设定系统打开端口的范围,即用于向外连接的端口范围
net.ipv4.tcp_rmem = # tcp对内存的使用
net.ipv4.tcp_wmem =
net.core.rmem_default =
net.core.wmem_default =
net.core.rmem_max =
net.core.wmem_max =
net.core.netdev_max_backlog = # 当每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许发送到队列的数据包最大数
net.ipv4.tcp_syncookies = # 表示开启SYN Cookies功能
net.ipv4.tcp_max_syn_backlog = # 设置SYN队列的长度
net.ipv4.tcp_synack_retries = # 决定了内核放弃连接之前发送SYN+ACK包的数量
net.ipv4.tcp_syn_retries = # 内核放弃建立连接之前发送SYN包的数量
nginx 的优化配置说明
全局 worker_proceses ; cpu数量最佳与系统cpu数一直 “grep ^processor /proc/cpuinfo | wc -l”在linux 运行该命令查看系统cpu数
worker_cpu_affinity ; 直接将nginx的worker进程绑定在固定的cpu上 nginx的进程跑在某一个CPU或CPU的某一个核上,导致nginx进程使用硬件的资源不均,绑定后可充分有效的利用有效的硬件资源
events use epoll; 使用epoll(linux2.6的高性能方式)
worker_connections ; 每个worker 连接的进程数
multi_accept on; 在接收到一个新请求尽可能多的连接
http proxy_buffer_size 4k; 指令设置缓冲区大小,从被代理的后端服务器取得的响应内容,会先读取放置到这里.
sendfile on; sendfile()可以在磁盘和TCP socket之间互相拷贝数据(或任意两个文件描述符),这种拷贝是在内核完成的,sendfile()要比组合read()和write()以及打开关闭丢弃缓冲更加有效
tcp_nopush on; tcp_nopush告诉nginx在一个数据包里发送所有头文件,而不一个接一个的发送
tcp_nodelay on; 不延时发送请求,on 禁用nagle缓存算法 nagle缓存算法,有些应用程序在网络通讯的时候会发送很少的字节,比如说一个字节,那么再加TCP协议本身,实际上发的要41个字节,这样的效率是很低的。这时候nagle算法就应运而生了,它将要发送的数据存放在缓存里,当积累到一定量或一定时间,再将它们发送出去。
keepalive_timeout ; 设置nginx的超时断开
allow 47.103.36.8; (location模块) 指定ip可以访问
deny all;(location模块) 禁用除允许ip外的所有ip的访问
linux + nginx 的配置优化的更多相关文章
- linux nginx常见问题及优化,压力测试,tomcat服务器优化
nginx常见问题 nginx优化全局配置优化[root@web2 nginx]# vim conf/nginx.confuser nobody;worker_processes 1;(与cpu核心数 ...
- Linux Nginx 安装配置
安装前准备工作 GCC编译器-程序代码编译工具! 首先检验你的服务器环境是否安装gcc,方法如下: #gcc 如果出现:gcc: no input files 证明已经安装过gcc编译工具! 如果出现 ...
- FastCGI介绍及Nginx fastcgi配置优化
FastCGI介绍 FastCGI是从CGI发展改进而来的.传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给HTTP服务 ...
- linux nginx 如何配置多个端口
在linux下发布.netcore 应用,并使用nginx进行反向代理,参照博客园文章 https://www.cnblogs.com/ants/p/5732337.html#autoid-7-3-0 ...
- Java高级架构师(一)第41节:Nginx的配置优化以及使用建议
- 5.9 Nginx的配置优化
- Nginx配置优化及深入讲解,大家可以听一下
随着访问量的不断增加,需要对Nginx和内核做相应的优化来满足高并发用户的访问,那下面在单台Nginx服务器来优化相关参数. 1) Nginx.conf配置优化: worker_proce ...
- nginx 配置优化的几个参数
nginx 配置优化的几个参数 2011-04-22 本文地址: http://blog.phpbean.com/a.cn/7/ --水平有限欢迎指正-- -- 最近在服务器上搞了一些nginx 研究 ...
- Nginx 之二: nginx.conf 配置及基本优化
一:常用功能优化: 1:网络连接的优化: 只能在events模块设置,用于防止在同一一个时刻只有一个请求的情况下,出现多个睡眠进程会被唤醒但只能有一个进程可获得请求的尴尬,如果不优化,在多进程的ngi ...
随机推荐
- unity3d 让物体移动到点击位置
using UnityEngine; using System.Collections; public class test : MonoBehaviour { //在场景中鼠标点击地面后,角色可以移 ...
- ubuntu16 mysql 远程连接
打开配置文件: sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 将下面一行注释掉: # bind-address = localhost 重启服务 sudo s ...
- PostgreSQL导出表中数据
下边的步骤详细讲述了从Postgres数据库中导出数据的方法: (1)将PostgreSQL数据库的psql工具所在的路径添加到系统的环境变量中:(2)运行cmd,在窗口中输入psql,会有提示输入口 ...
- Redis 四:存储类型之散列类型
1.散列类型表达方式简介: =========================================== 键 字段 值 =================================== ...
- re模块findall函数用法
title: Python subtitle: 1.re模块findall函数用法 date: 2018-12-13 10:17:28 --- Python re 模块 findall 函数用法简述 ...
- 【udacity】机器学习-2模型验证
Evernote Export 1.模型的评估与验证简介 机器学习通常是大量传入数据,然后会有一些关于数据的决策.想法和摘要. 2.模型评估 评估模型使用的是各种数据分析的方法,至少需要使用pytho ...
- js进度条插件pace.js
主要用到themes文件夹和pace.js文件
- 常用css和js内容
1.让一个200x200的div在不同分辨率屏幕上下左右居中. <div class="box"></div> <style type="t ...
- Python基础学习_01修改代码所属作者
1.修改开头的作者Author 2.具体步骤如下图 (1)点击下图所画的按钮 (2)具体操作如图所示,就可以得到自己想要的结果了.
- Django之组合查询
一 .Django组合查询 很多电商网站中有组合搜索的功能,所谓组合搜索就是网页中组合多个条件,对数据库中进行查询,并且将结果显示在页面中,下面是所做组合查询效果图: 实现代码如下: <1> ...