23. 時間同步
同步時間可以使用 root 執行如下命令完成:
rdate -s time.nist.gov
如果需要自動同步,可以採用crontab自動調度,每小時執行一次:
編輯 crontab:
crontab -e
按 i 進入插入模式,然後添加如下一行:
1 * * * * root rdate -s time.nist.gov
然後依次按 ESC進入命令模式, 看見冒號以後,輸入 wq 和 斷行符號儲存退出即可(其實就是 vi /etc/crontab).
24. 查看某個連接埠被哪個進程監聽
netstat -anp |grep 8015
結果可能如下所示:
# netstat -anp |grep 8015tcp 0 0 127.0.0.1:8015 0.0.0.0:* LISTEN 16335/java
通過以上結果可以發現,進程號 PID 是 16335,程式是 java.
此時,再搜尋尋找 16335 進行就容易了:
# ps aux | grep 16335root 16335 1.0 11.0 2138564 269532 ? Sl 16:43 0:30 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat_index/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/tomcat_index/endorsed -classpath /usr/local/tomcat_index/bin/bootstrap.jar -Dcatalina.base=/usr/local/tomcat_index -Dcatalina.home=/usr/local/tomcat_index -Djava.io.tmpdir=/usr/local/tomcat_index/temp org.apache.catalina.startup.Bootstrap start
25. 安裝不掉線螢幕工具
詳細的教程請參考: Linux遠端工作階段管理工具:screen
普通的使用如下所示:
# 安裝不掉線螢幕工具yum -y install screen# 開啟一個新螢幕screen# 在螢幕中執行命令ping www.baidu.com# ctrl+a,d 切換畫面回去# 開啟另一個新螢幕screen# 在螢幕中執行命令ping www.csdn.com# ctrl+a,d 切換畫面回去# 查看開啟的不掉線螢幕screen -ls# 進入特定的session螢幕sesid=4567screen -r $sesid# 結束當前的screen,退回到原先情境exit
26. dstat 查看磁碟,cpu使用狀態
命令 dstat # 使用樣本如下:
[root@AY131 ~]# dstat----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--usr sys idl wai hiq siq| read writ| recv send| in out | int csw 1 1 99 0 0 0| 11k 22k| 0 0 | 0 0 | 138 87 0 1 100 0 0 0| 0 0 | 182B 882B| 0 0 | 47 54 0 0 100 0 0 0| 0 0 | 94B 402B| 0 0 | 55 58 15 13 70 0 1 1| 0 0 |1331k 1166k| 0 0 |2290 767 11 9 80 0 1 1| 0 16k| 752k 905k| 0 0 |1682 436 0 0 100 0 0 0| 0 0 | 52B 402B| 0 0 | 40 53 0 0 100 0 0 0| 0 0 | 52B 402B| 0 0 | 41 54 1 0 100 0 0 0| 0 0 | 52B 402B| 0 0 | 43 54 0 0 99 0 0 0| 0 48k| 52B 402B| 0 0 | 43 60 0 0 100 0 0 0| 0 16k| 140B 402B| 0 0 | 49 65
RHEL 6.3預設已經安裝了, 另外,這裡有一篇比較全面的介紹 dstat的文章: Linux下比較全面的監控工具dstat
27.iostat 查看IO使用
命令: iostat -dmx 5 #表示 5秒重新整理一次
[root@AY131 ~]# iostat -dmx 5Linux 2.6.32-358.6.2.el6.x86_64 (AY131) 06/03/2014 _x86_64_(2 CPU)Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %utilxvda 0.00 0.04 0.01 0.66 0.00 0.00 8.95 0.01 7.83 2.06 0.14xvdb 0.00 1.90 0.14 0.56 0.01 0.01 37.72 0.06 78.87 2.21 0.16scd0 0.00 0.00 0.00 0.00 0.00 0.00 8.00 0.00 2.00 2.00 0.00Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %utilxvda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00xvdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00scd0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
28. 查看核心版本
使用 uname 命令,然後指定 -r 選項:
[root@AY13121 ~]# uname -r2.6.32-358.6.2.el6.x86_64
uname命令的詳細協助資訊如下所示:
[root@AY1312 ~]# uname --help用法: uname [OPTION]...列印某些系統資訊. 如果不指定[OPTION] 選項, 則輸出結果和選項 -s 一致. -a, --all 按下面所有選項的順序列印所有資訊,以空格分隔, 如果 -p 和 -i 選項是 unknown 則對應的項將被省略: -s, --kernel-name 列印核心名,如 "Linux" -n, --nodename 列印網路節點的主機名稱hostname,如 "AY1312" -r, --kernel-release 列印核心的 kernel release 版本號碼,如 "2.6.32-358.6.2.el6.x86_64" -v, --kernel-version 列印核心kernel的version,如"#1 SMP Thu May 16 20:59:36 UTC 2013" -m, --machine 印表機器的硬體名,如 "x86_64" -p, --processor 列印處理器類型,如"x86_64",或者 "unknown" -i, --hardware-platform 列印硬體平台資訊,如"x86_64",或者 "unknown" -o, --operating-system 列印作業系統,例如 "GNU/Linux" --help 顯示本協助資訊並退出 --version 輸出uname命令的 version 資訊並退出
29. Tomcat 的簡單最佳化
就如同Oracle的最實用的最佳化是配置合理的記憶體和串連數一樣,Tomcat也是一樣的道理。
先配置 /usr/local/tomcat/bin/catalina.sh 檔案,windows下是 bat檔案,當然,設定記憶體需要自己決定了,JDK最好是64位,假如是32位,則記憶體可能配置不到1GB.
如果是專用伺服器,則初始記憶體和最大記憶體應該設定為同樣大小.
export JAVA_OPTS="$JAVA_OPTS -server -Xmx1536m -Xms1024m"
29.1 修改Tomcat使用的JVM記憶體大小:
[root@AY13121 bin]# head catalina.sh#!/bin/shexport JAVA_OPTS="$JAVA_OPTS -server -Xmx1536m -Xms1024m"# Licensed to the Apache Software Foundation (ASF) under one or more# contributor license agreements. See the NOTICE file distributed with# this work for additional information regarding copyright ownership.# The ASF licenses this file to You under the Apache License, Version 2.0# (the "License"); you may not use this file except in compliance with# the License. You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0
29.2 設定Tomcat連接器的線程數和請求等待隊列數:
請根據需要靈活設定, 個人建議 maxThreads 不要設定得太大,將等待隊列acceptCount設定大一點,應付壓力測試.
有2個連接器,8009是AJP的,8080是普通的,請根據使用哪個來進行配置.
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" acceptCount="1000"maxThreads="400" minSpareThreads="20"compression="on" useSendfile="false" compressionMinSize="2048"noCompressionUserAgents="gozilla,traviata"compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/javascript,application/x-javascript"/>
30.