[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环境支持.
修改系统最大文件数和最大线程数(centos7.2)
1 | 有时候进程数太小会导致卡死服务状态 而使用ulimit -u增加的线程不是永久添加的 这时候需要改配置文件使其永久添加。 |
mongodb调整最大连接数(3.6)
mongodb新版本中默认最大连接数是65536( maxIncomingConnections
)
控制台登录mongodb使用以下命令查看
1 | > db.serverStatus().connections; |
redis最大连接数
redis最大连接数默认是10000, 调整至30000
1 | //查看redis最大连接数, 需要先登录redis控制台 |
遇到问题
修改ulimit -n和config文件后并不管用,需要修改systemctl目录中的redis.server.d
下的配置文件
1 | cd /etc/systemd/system/redis.service.d |
或者启动时手动指定配置文件或者指定最大连接数
1 | redis-server /etc/redis.conf |
mysql最大连接数
查看mariadb最大连接数, 默认为151
1 | MariaDB [(none)]> show variables like 'max_connections'; |
配置/etc/my.conf,
[mysqld]新添加一行如下参数:
1 | max_connections=10000 |
重启maradb服务后, 再次查看mariadb最大连接数, 并非是我们设置的10000
1 | MariaDB [(none)]> show variables like 'max_connections'; |
这是由于mariadb有默认打开文件数限制。可以通过配置/usr/lib/systemd/system/mariadb.service来调大打开文件数目。
配置/usr/lib/systemd/system/mariadb.service
[Service]新添加两行如下参数:
1 | LimitNOFILE=20000 |
重新加载服务器并重启mariadb
1 | # systemctl daemon-reload |
###可能影响
Linux一般默认一个进程只有1024个文件描述符,需要通过ulimit修改