孝忠的运维之路(进阶一)

网友投稿 772 2022-09-29

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

孝忠的运维之路(进阶一)

老习惯,依然在北京向各位带好!愿各位在五月怒马前行。

没有相当程度的孤独,就不可能有内心的平和。前不久,还在位于青海省海西蒙古族藏族自治州乌兰县茶卡镇南侧的天然结晶盐湖——茶卡盐湖,无忧无虑地享受假期生活,突然公司带给我一个噩耗,线上服务器奔溃了。我没有选择,LZ只能孤军作战。

分析得出:由于项目发版在线用户同时更新应用导致服务器连接数过大,使某一个时刻线上服务器的CPU利用率、内外网宽带和内存使用率等都爆满了。

导致整个服务器挂掉之后重启,以致于所有Tomcat进程、MySQL数据库和Redis缓存服务等相关模块都停止工作了,这时候我别无选择,只能挨个手动重启,就在这过程中我又经历了漫长的等待,平均一个Tomcat重启成功需要等待5/6分钟(总共有8个),LZ更奔溃了,所以这次真的要回应了,下面都是一点简单粗暴的解决手法与各位共勉,望各位能够使得顺手。

优化Tomcat启动速度设置Tomcat、MySQL和Redis开机自启Linux常用命令清单

优化Tomcat启动速度

经日志查看找出这么一段:

主要原因就是Tomcat在启动时会生成一个Session ID,这个Session ID是通过SHA1算法计算得到的,计算Session ID的时候必须有一个密钥,为了提高安全性Tomcat在启动的时候是通过随机数生成这个密钥的。所以本次Tomcat启动耗时是根据随机数生成密钥引起的。

解决方案:

1、从根本上解决。

拖慢Tomcat生成密钥的根本问题是由于熵池不够大,所以增大它是最彻底的方法。使用rngd 软件增大熵池:

grep  rdrand /proc/cpuinfo        #需要cpu支持  yum install rng-tools                   #安装rngd服务(熵服务,增大熵池) systemctl start rngd                    # 启动服务

2、从JVM环境上解决。

vim $JAVA_HOME/jre/lib/security/java.security

3、配置Tomcat的内存分配(这只是性能调优,可以不做)。

请参考博客:http://cnblogs.com/1315925303zxz/p/7274895.html

自定义服务开机自启

1、Tomcat开机自启

编辑:vim /etc/rc.d/rc.local添加如下内容。

2、Redis开启自启

编辑:redis.conf修改如下内容,主要目的是为了确保守护进程开启,也就是在后台可以运行。

然后执行命令即可:chkconfig redis on

Linux必备命令清单

1、查看正在运行的某个进程:

ps aux | grep tomcat

2、实时查看Tomcat的运行日志:

cd tomcat安装目录/logs/

tail -f catalina.out

3、查看某应用服务是否已经安装:

rpm -qa | grep mysql

4、解压.tar.gz包:

tar -zxvf XXX.tar.gz

5、删除目录:

rm -rf XXX

6、删除文件:

rm -f file

7、上传本地文件或目录到终端中(上传的目的路径可以通过第三方工具SecureCRT配置)

rz

8、下载终端文件到本地(下载的目的路径可以通过第三方工具SecureCRT配置)

sz filename

9、查看某端口是否被占用:

netstat -tunlp | grep 端口号

lsof -i:端口号

10、杀死指定进程:

kill -9 PID(端口号)

11、每隔2秒监控CPU和内存使用情况:

top -d 2

12、搜索:

find 搜索范围 -name filename

whereis 可执行文件/系统命令/二进制文件

上一篇:运维狗的北京爱情故事
下一篇:数据库到底是不是运维
相关文章

 发表评论

暂时没有评论,来抢沙发吧~