LNMP环境下压力测试时的主要调试参数
LNMP环境下压力测试时的主要调试参数: 进行HTTP的压力测试时,很多时候会遇到很小的并发数,服务器就会出现不响应,或者连接超时,一般导致的原因有如下几点: 一、Nginx主要调试参数 主模块参数:
worker_processes = 4 #按照CPU核心数量的设置
worker_rlimit_nofile 65535; #Nginx进程打开文件描述符最大数量
use epoll; #使用epoll事件模型
worker_connections = 10240 #每个进程的最大连接数 HTTP模块参数
keepalive_timeout 60; #keepalive超时时间。
client_body_buffer_size 64K; #客户端请求内容的缓冲区大小。
client_header_buffer_size 8k; #客户端请求头部的缓冲区大小,可以根据系统的分页大小来设置。
large_client_header_buffers 4 128k;
client_max_body_size 8m; #客户端请求内容的最大值。
open_file_cache max=10240 inactive=30s; #打开文件的缓存,max指缓存的最大数量,inactive指缓存过期时间。
open_file_cache_valid 30s; #检查缓存的有效时间。
open_file_cache_min_uses 1; #inactive参数的时间内文件的最少使用次数,如果超过这个值,则保持缓存的打开状态。 fastcgi_buffers 8 32k; #读取FastCGI返回信息的缓冲数量和大小。
fastcgi_buffer_size 128k; #读取FastCGI服务器响应头部的缓冲区大小。
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_connect_timeout 120; #连接到后端FastCGI的超时时间。
fastcgi_send_timeout 120; #向FastCGI传送请求的超时时间。
fastcgi_read_timeout 120; #接收FastCGI应答的超时时间。 二、PHP主要调试参数 1、php-fpm主要调试参数
pm = dynamic
进程管理方式,一般是static或者dynamic。 pm.max_children = 100
表示创建的子进程的数量。 pm.max_requests = 10000
每个子进程重起之前服务的请求数,存在内存泄漏时比较有用 rlimit_files = 65535
打开文件描述符的限制,可以使用ulimit -n查看。 2、php.ini主要调试参数
upload_max_filesize 8m
post_max_size 8m
max_execution_time 600
max_input_time 600
memory_limit 8m 三、MySQL主要调试参数 下面的配置选项可能比较少(8G内存的MySQL),实际会超过很多人的需要,以后可以根据MySQL的运行状态进行修改。
[mysql]
port = 3306
socket = /var/lib/mysql/mysql.sock
[mysqld]
user = mysql
default_storage_engine = InnoDB
socket = /var/lib/mysql/mysql.sock
pid_file = /var/lib/mysql/mysql.pid
skip_name_resolve
key_buffer_size = 32M
myisam_recover = FORCE,BACKUP
max_allowed_packet = 16M
max_connect_errors = 1000000
log_bin = /var/lib/mysql/mysql-bin
expire_logs_days = 7
sync_binlog = 0
tmp_table_size = 32M
max_heap_table_size = 32M
query_cache_type = 1
query_cache_size = 32M
max_connections = 500
thread_cache_size = 50
open_files_limit = 65535
table_definition_cache = 1024
table_open_cache = 2048
innodb_flush_method = O_DIRECT
innodb_log_files_in_group = 2
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 2
innodb_file_per_table = 1
innodb_buffer_pool_size = 4G
log_error = /var/log/mysql-error.log
log_queries_not_using_indexes = 1
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log 四、Linux系统内核参数 1、sysctl.conf文件常用参数
fs.file-max #linux系统中可以打开的文件数量
net.core.netdev_max_backlog #允许送到队列的数据包的最大数目
net.core.rmem_max #SOCKET读缓存区大小
net.core.wmem_max #SOCKET写缓存区大小
net.core.somaxconn #系统中每一个端口最大的监听队列的长度
net.ipv4.ip_local_port_range #允许系统打开的端口范围
net.ipv4.tcp_fin_timeout #TIME_WAIT2进入CLOSED的等待时间
net.ipv4.tcp_keepalive_time #TCP发送keepalive消息的时间
net.ipv4.tcp_max_syn_backlog #SYN队列的长度
net.ipv4.tcp_synack_retries #内核放弃连接之前发送SYN+ACK包的数量
net.ipv4.tcp_syn_retries #内核放弃建立连接之前发送SYN包的数量
net.ipv4.tcp_max_tw_buckets #控制TIME_WAIT的最大数量
fs.file-max #系统可打开的文件数
fs.nr_open #fs.file-max的值不要超过fs.nr_open的值 使sysctl.conf文件的修改生效
# sysctl -p 2、limits.conf文件
# vi /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535 五、硬件负载 查看CPU负载情况
# top 查看内存的使用情况
# free -m 查看磁盘IO的情况
# iostat -kx 2 查看网络的流量情况
# sar -n DEV 2
LNMP环境下压力测试时的主要调试参数的更多相关文章
- LNMP环境搭建:Nginx安装、测试与域名配置
Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理.缓存服务软件 2.编译安装Nginx (1)安装Nginx依赖函数库pcre pcre为“perl兼容正则表达 ...
- 【第五课】LNMP环境的入门
目录 一. LNMP环境介绍 二.Mysql的二进制免编译安装 三.PHP 7.2.5编译部署 四.Nginx的编译安装 五.YUM安装Nginx 一. LNMP环境介绍 LNMP(Linux + N ...
- lnmp环境应用实践
LNMP 用户通过浏览器输入域名请求nginx web服务,如果请求时静态资源,则由nginx解析返回给用户:如果是动态请求(.php结尾),那么nginx就会把它通过FastCGI接口(生产常用方法 ...
- Linux实战教学笔记28:企业级LNMP环境应用实践
一,LNMP应用环境 1.1 LNMP介绍 大约在2010年以前,互联网公司最常用的经典Web服务环境组合就是LAMP(即Linux,Apache,MySQL,PHP),近几年随着Nginx Web服 ...
- 原lnmp环境服务器升级为mysql+nginx+php单个docker容器构建的lnmp环境
时间:2018年2月 一.项目背景 我单位现web服务架构为lnmp环境,服务器软件.硬件升级部署难:同时开源软件日新月异,考虑到技术升级,领导决定服务器架构整体升级为容器架构,维护性.移植性强. 二 ...
- LNMP环境搭建之php安装,wordpress博客搭建
LNMP环境搭建之php安装,wordpress博客搭建 一.介绍: 1.什么是CGI CGI全称是"通用网关接口"(Common Gateway Interface),HTTP服 ...
- LNMP环境搭建(<=PHP7.2)
目录 准备工作 安装wget 安装net-tools 安装vim 配置显示行号 关闭防火墙 安装Nginx 安装依赖 编译安装Nginx 配置环境变量 Systemd管理 安装MySQL 安装依赖 下 ...
- LNMP环境搭建(PHP7.4.0)
目录 准备工作 安装wget 安装net-tools 安装vim 配置显示行号 关闭防火墙 安装Nginx 安装依赖 编译安装Nginx 配置环境变量 Systemd管理 安装MySQL 安装依赖 下 ...
- Centos7之LNMP环境编译安装
Centos7之LNMP环境编译安装 一.系统环境准备 注:安装时间过长,只做参考!!!1.系统信息 [root@localhost ~]# uname -r 3.10.0-957.el7.x86_6 ...
随机推荐
- c# is和as的区别
关于类型的判断和转换有is和as这2个操作符.具体区别和用法如下is就是处于对类型的判断.返回true和false.如果一个对象是某个类型或是其父类型的话就返回为true,否则的话就会返回为false ...
- N人报数第M人出列游戏问题(约瑟夫问题)
这是一道华为的机试题,后来才知道也叫约瑟夫问题,题目是这样的:有n个人围成一圈,玩一个游戏,规则为将该n个人编号为1,2,......n, 从编号为1的人开始依次循环报数,报道第m的时候将第m个人从队 ...
- [再寄小读者之数学篇](2014-11-19 $\sin x/x$ 在 $(0,\pi/2)$ 上递增)
$$\bex \frac{\sin x}{x}\nearrow. \eex$$ Ref. [Proof Without Words: Monotonicity of $\sin x/x$ on $(0 ...
- 又一枚神器:nginx
一直听说过nginx的大名,也自己装过,但是未直接使用其各种牛X的功能. 今天试用了一下,只能用两字感叹:牛逼!比如它提供的配置检查功能,真是贴心极了,又比如我想要的静态内容浏览器端缓存功能,动态内容 ...
- VC远控(一)界面设计及套接字连接测试
首先创建一个MFC项目. 选择基于对话框: 勾选Windows套接字 依次拉上各种不同的控件: Edit Control.Button.Tree.Static Text.List.Progress C ...
- iOS学习笔记之Category
iOS学习笔记之Category 写在前面 Category是类别(也称为类目或范畴),使用Category,程序员可以为任何已有的类添加方法.使用类别可以对框架提供的类(无法获取源码,不能直接修改) ...
- 配置使VirtualBox下的linux可以宿主机互访并上网
1. 设置VirtualBox,选择桥接网卡 2. 配置linux的ifcfg-eth0 配置完成后,用service network restart重启网络. 3. 然后查后路由配置是否正确 如果没 ...
- geeksforgeeks@ Largest Number formed from an Array
http://www.practice.geeksforgeeks.org/problem-page.php?pid=380 Largest Number formed from an Array G ...
- POJ 2395 Out of Hay(MST)
[题目链接]http://poj.org/problem?id=2395 [解题思路]找最小生成树中权值最大的那条边输出,模板过的,出现了几个问题,开的数据不够大导致运行错误,第一次用模板,理解得不够 ...
- ajax 新闻栏目
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...