1. 过程能够关上的文件数(高并发时罕用)
ulimit -n
查看一个过程能够关上的文件数
批改过程能够关上的最大文件数
长期批改:
ulimit -n [过程数]
永恒批改:批改限度用户资源配置文件
vim /etc/security/limits.conf
开端增加
- soft nofile 102400
- hard nofile 102400
———————————————————————————————————————————
2. 用户能够开启的最大过程数(高并发时罕用)
ulimit -u
查看以后用户能够关上的最大数
批改以后用户能够开启的最大过程数
长期批改:
ulimit -u [过程数]
永恒批改:批改限度用户资源配置文件
vim /etc/security/limits.d/90-nproc.conf
开端增加
- soft nproc 102400
- hard nproc 102400
———————————————————————————————————————————
3. 查看 I / O 资源限度
ulimit -a
———————————————————————————————————————————
须要 C /C++ Linux 服务器架构师学习材料加 qun(563998835)(材料包含 C /C++,Linux,golang 技术,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK,ffmpeg 等),收费分享
4.I/ O 调优范例
————————–I/ O 调优举例 ————————————-
[root@localhost ~]# yum install -y httpd // 装置 apache 测试
[root@localhost ~]# echo Test > /var/www/html/index.html
[root@localhost ~]# service httpd restart
[root@localhost ~]# ab -n 2000 -c 2000 #http://192.168.1.63/index.html // - n 代表每次并发量,- c 代表总共发送的数量
This is ApacheBench, Version 2.3 <$Revision:** 655654 **$>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.1.63 (be patient)
socket: Too many open files (24)
超过了限度,咱们就无奈在关上咱们的 html 这个文件,解决办法:
vim /etc/security/limits.conf // 限度用户资源配置文件
* soft nofile 102400 #开端增加这两行
* hard nofile 102400
注:soft 是一个正告值,而 hard 则是一个真正意义的阀值,超过就会报错。soft 肯定要比 hard 小。
启动零碎:reboot,永恒失效的毛病,必须重启零碎
reboot
重启
service httpd restart
ab -n 2000 -c 2000 http://192.168.1.63/index.html
……
Server Software: Apache/2.2.15
Server Hostname: 192.168.1.63
Server Port: 80
Document Path: /index.html
Document Length: 5 bytes
……
———————————————————————————————————————————
5. 硬盘速度测试
执行读写命令测试硬盘速度
在应用前首先理解两个非凡设施
/dev/null 伪设施,回收站. 写该文件不会产生 IO 开销
/dev/zero 伪设施,会产生空字符流,读该文件不会产生 IO 开销
[root@localhost ~]# dd if=/dev/zero of=/test.dbf bs=8K count=30000
3000+0 records in
3000+0 records out
24576000 bytes (25 MB) copied, 5.13755 s, 4.8 MB/s
生成 25M 的一个文件,IO 写的速度约为 4.8 MB/s
当然这个速度能够多测试几遍取一个平均值,合乎概率统计.
用 time 命令用于执行前面的命令并计时
[root@localhost ~]# time dd if=/dev/zero of=/test1.dbf bs=8k count=3000
3000+0 records in
3000+0 records out
24576000 bytes (25 MB) copied, 1.04913 s, 23.4 MB/s
real 0m1.061s
user 0m0.002s
sys 0m0.770s
1) 理论工夫 (real time): 从 command 命令行开始执行到运行终止的消失工夫;
2) 用户 CPU 工夫 (user CPU time): 命令执行实现破费的用户 CPU 工夫,即命令在用户态中执行工夫总和;
3) 零碎 CPU 工夫 (system CPU time): 命令执行实现破费的零碎 CPU 工夫,即命令在外围态中执行工夫总和。
其中,用户 CPU 工夫和零碎 CPU 工夫之和为 CPU 工夫,即命令占用 CPU 执行的工夫总和。理论工夫要大于 CPU 工夫,因为 Linux 是多任务操作系统,往往在执行一条命令时,零碎还要解决其它工作。
另一个须要留神的问题是即便每次执行雷同命令,但所破费的工夫也是不一样,其破费工夫是与零碎运行相干的。
应用 hdparm 工具测试硬盘速度
hdparm -T -t /dev/sda
-t perform device read timings
不应用事后的数据缓冲, 标示了 Linux 下没有任何文件系统开销时磁盘能够反对多快的间断数据读取,能够了解为读硬盘
-T perform cache read timings