[TOC]
##简单测试:
siege  https://blog.csdn.net/lshemail/article/details/79298357 
siege.js是一个面向程序员友好的测试工具,主要以测试http接口(或页面), 需要手动写测试代码. 没有可视化的客户端. 适用于初级测试.
websocket-bench:https://github.com/M6Web/websocket-bench 
nodejs tool to benchmark socket.io and faye websocket server.
websocket-benck是基于nodejs的工具. 主要用来测试websocket, 此工具三年前已暂停更新.
JMeter:https://jmeter.apache.org 
是Apache基金会开源的100%纯JAVA桌面应用程序.被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能.
jmeter需要有java环境支持.
Jmeter(一)工具的简单介绍 
修改系统最大文件数和最大线程数(centos7.2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 有时候进程数太小会导致卡死服务状态 而使用ulimit -u增加的线程不是永久添加的  这时候需要改配置文件使其永久添加。 1,切换root权限 2,vim /etc/security/limits.conf    # End of file #root soft nofile 65535 #root hard nofile 65535 #* soft nofile 65535 #* hard nofile 65535 * soft noproc 127093 * hard noproc 127093 * soft nofile 127093 * hard nofile 127093 注释掉本来的配置 直接加新的就行  。 3,vim /etc/security/limits.d/20-nproc.conf #*         soft    nproc     4096 #root      soft    nproc     unlimited *          soft    nproc     127098 *          hard    nproc     204800 还是注掉原本存在的  直接加,然后重启  就会发现root和普通用户都是127098(自己设置)的线程。 最大文件数同理  nofile代表最大文件数  ---------------------  作者:BiuBiuBiu___  来源:CSDN  原文:https://blog.csdn.net/BiuBiuBiu___/article/details/80169358  版权声明:本文为博主原创文章,转载请附上博文链接! 
mongodb调整最大连接数(3.6) mongodb新版本中默认最大连接数是65536( maxIncomingConnections
控制台登录mongodb使用以下命令查看
1 2 3 > db.serverStatus().connections; { "current" : 1, "available" : 203, "totalCreated" : 1 } 最大连接数=current数值+available数值 
redis最大连接数 redis最大连接数默认是10000, 调整至30000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 //查看redis最大连接数, 需要先登录redis控制台 > config get maxclients 1) "maxclients" 2) "10000" //查看redis当前连接数 >info Clients # Clients connected_clients:16 client_longest_output_list:0 client_biggest_input_buf:0 blocked_clients:0 //修改redis最大连接数 临时修改: config set maxclients 10208 //永久修改: vim /etc/redis.conf 修改maxclients = 30000 修改并保存配置文件后重启redis 
遇到问题 
修改ulimit -n和config文件后并不管用,需要修改systemctl目录中的redis.server.d下的配置文件
1 2 3 4 5 6 cd /etc/systemd/system/redis.service.d 修改limit.conf文件中参数LimitNOFILE的值, 保存 执行如下命令 # systemctl daemon-reload //重启redis # systemctl restart redis 
 或者启动时手动指定配置文件或者指定最大连接数
1 2 redis-server /etc/redis.conf 或者 redis-server --maxclients=20000 
mysql最大连接数 查看mariadb最大连接数, 默认为151
1 2 3 4 5 6 7 MariaDB [(none)]> show variables like 'max_connections'; +-----------------+-------+ | Variable_name   | Value | +-----------------+-------+ | max_connections | 151   | +-----------------+-------+ 1 row in set (0.00 sec) 
配置/etc/my.conf, 
[mysqld]新添加一行如下参数:
重启maradb服务后, 再次查看mariadb最大连接数, 并非是我们设置的10000
1 2 3 4 5 6 7 MariaDB [(none)]> show variables like 'max_connections'; +-----------------+-------+ | Variable_name   | Value | +-----------------+-------+ | max_connections | 214   | +-----------------+-------+ 1 row in set (0.00 sec) 
这是由于mariadb有默认打开文件数限制。可以通过配置/usr/lib/systemd/system/mariadb.service来调大打开文件数目。
配置/usr/lib/systemd/system/mariadb.service
[Service]新添加两行如下参数:
1 2 LimitNOFILE=20000 LimitNPROC=20000 
重新加载服务器并重启mariadb
1 2 # systemctl daemon-reload # systemctl restart mariadb 
###可能影响
Linux一般默认一个进程只有1024个文件描述符,需要通过ulimit修改
https://cnodejs.org/topic/5445caed9657d9ab12567e88