Linux 离线安装
yum locallinstall screen.rpm
Linux CPU占用率100%排查五步法
https://www.cnblogs.com/cherishthepresent/p/17474952.html
排查思路分为五步,按照步骤操作,正确的排查方法,有助于快速的定位并解决问题。
1、top 命令定位应用进程 pid
2、top -Hp [pid] 定位应用进程对应的线程 tid
3、printf "%x\n" [tid] 将tid转换为十六进制
4、jstack [pid] | grep -A 10 [tid的十六进制] 打印堆栈信息
5、根据堆栈信息分析问题
Mysql CUP飙升至400%问题处理
0
存储基础:文件描述符 fd 究竟是什么?
“too many open files”这个错误
https://blog.csdn.net/qq_34556414/article/details/126840799
文件句柄泄露有多种原因,而不仅仅是打开文件,常见的来源有:套接字,管道,数据库连接,文件。正常情况下服务器本身是不会突然报这个错误的,一定是我们部署到云服务器上面的业务程序打开了太多文件没有关闭导致同时打开的文件数超出了系统的限制:
一种情况是程序本身就需要打开很多的文件句柄,这种情况就是打开的文件数大于系统本身的打开文件数限制,这时需要我们将系统的限制调高。
修改Linux系统的最大文件句柄数限制的方法:
1) 针对当前session有效,用户退出或者系统重新后恢复默认值
# ulimit -n 65535
2) 只对单个用户有效; 修改 profile文件:在 profile文件中添加:ulimit -n 65535
# ulimit -n 65535
3) 永久生效法:针对单个进程最大文件句柄数:
修改文件:/etc/security/limits.conf,在文件中添加:(立即生效-当前session中运行ulimit -a命令无法显示);修改以后保存,注销当前用户,重新登录,执行ulimit -a ,ok ,参数生效了:
* soft nofile 32768 #限制单个进程最大文件句柄数(到达此限制时系统报警)
* hard nofile 65536 #限制单个进程最大文件句柄数(到达此限制时系统报错)
4)针对系统最大文件句柄数:
修改文件:/etc/sysctl.conf。在文件中添加:
fs.file-max=655350 #限制整个系统最大文件句柄数
运行命令:/sbin/sysctl -p 使配置生效
5) 文件参数说明 /etc/security/limits.conf :
* cat limits.conf
* soft core 102400
* hard core 102400
* hard nofile 10000
* soft nofile 10000
* hard nproc 10000
* soft nproc 10000
最后系统使用这个
# End of file
* - nofile 102400
* - nproc 102400
解释:*代表domain,就是全局的意思,可以改成具体的用户名来限制某个用户。
soft / hard:这个当中的硬限制是实际的限制,而软限制,是warnning限制,只会做出warning.
nofile 代表max number of opened file,
10000:代表最大打开句柄数
相关查看命令
ls /proc/<pid>/fd | wc -l 统计pid对应进程打开的fd数量。
lsof -p <pid>| awk '{print $4}' |grep "^[0-9]" |wc -l 这个命令的结果和上面的命令应该是一样大。
lsof -u root 这个命令是查看用户粒度的文件打开信息,lsof的结果包含memory mapped .so-files,这些在原理上并不是一般的应用程序控制的fd,所以通常要把这一部分的过滤掉。
lsof -u root| awk '{print $4}' |grep "^[0-9]" |wc -l 查看用户root的fd打开数。
cat /proc/pid/limits 这个文件记录了pid进程的所有的limits值,一般以这个为准。
cat /proc/sys/fs/file-max 表示当前内核可以打开的最大的文件句柄数,一般为内存大小(KB)的10%,一般我们不需要主动设置这个值,除非这个值确实较小。
cat /proc/sys/fs/file-nr 第一个数字表示当前系统打开的文件数。第三个数字和cat /proc/sys/fs/file-max结果一样表示当前内核可以打开的最大的文件句柄数。
[root@localhost ~]# ulimit -a
-------------------------------------------------------------------------------------------
nginx-1.18.0.tar.gz
wget http://nginx.org/download/nginx-1.18.0.tar.gz
jdk-8u221-linux-x64.tar.gz
wget --no-check-certificate --no-cookies --header “Cookie: oraclelicense=accept-securebackup-cookie” https://download.oracle.com/otn/java/jdk/8u221-b11/230deb18db3e4014bb8e3e8324f81b43/jdk-8u221-linux-x64.tar.gz
编辑系统环境变量
[root@node2 ~]# vi /etc/profile
...
export JAVA_HOME=/usr/local/jdk1.7.0_71
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
重启profile :source /etc/profile
mysql-5.7.22
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
redis-5.0.7.tar.gz
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
rocketmq-4.8.0
https://mirrors.bfsu.edu.cn/apache/rocketmq/4.8.0/rocketmq-all-4.8.0-source-release.zip
activemq-5.15.3-bin.tar.gz
wget http://archive.apache.org/dist/activemq/5.15.3/apache-activemq-5.15.3-bin.tar.gz
mqtt mosquitto
https://www.cnblogs.com/chen1-kerr/p/7258487.html
https://www.lanseyujie.com/post/mosquitto-installation-and-usage.html
maven-3.5.4
wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
linux安装maven
https://www.cnblogs.com/yuexiaoyun/articles/13033946.html
idea 2023.3下载
https://down.51bigbig.com/softload/IDEA_60005_49723.exe
IDEA官网
https://www.jetbrains.com.cn/idea/download/other.html