1.應用 jar 沖突
log4j沖突導致,應用報錯。類型轉換沖突。
需求:定位某個類實際從那個jar加載 ? -verbose:class 參數(或者
-XX:+TraceClassLoading),詳細的記錄了加載了那些類、從那個jar加載。
參見:
http://agapple.iteye.com/blog/9466032.性能測試過程
linux有什么命令、或軟件,可以同時收集cpu、load、上下文切換、mem、網絡IO、磁盤IO等數據嗎 ?
vmstat 含義詳解 ? -> 圖形化報表 (痛苦的是要'人工'看著記錄數據,這簡直是程序員的污點呀)
(vmstat的IO統計的是塊設備(如磁盤)的數據,網卡沒有對應的設備文件(
http://oss.org.cn/kernel-book/ch11/11.2.3.htm),網絡IO統計使用iftop)
vmstat
http://linux.about.com/library/cmd/blcmdl8_vmstat.htm3.Jboss啟動錯誤
java.sql.SQLException: Table already exists: JMS_MESSAGES in statement [CREATE CACHED TABLE JMS_MESSAGES]
參見:http://dinghaoliang.blog.163.com/blog/static/126540714201082764733272/
%jboss_home%/server/default/deploy/hsqldb-ds.xml這個文件中有一個DefaultDS數據源配置,臨時解決刪除hsqldb-ds.xml文件。原因未知。
4.logback 0.9.19 版本,引入<encoder>,放棄 <appender><layout></appenader>
<encoder>
<pattern>%m%n</pattern>
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
源碼:OutputStreamAppender.java
protected void writeOut(E event) throws IOException {
this.encoder.doEncode(event);
}
對日志文件charset指定,經過debug調試,必須通過此方式配置才有效。否則取系統默認編碼。
5.設置linux系統編碼
http://linux.vbird.org/linux_basic/0320bash.php#variable_locale其實‘系統編碼’設置,即設置對應的系統變量,則所有可設置系統變量的文件都可設置編碼,export使其生效
locale 查看當前用戶使用的編碼(),locale -a 查看機器所支持的所有編碼
默認設置:
a、系統級別 /etc/profile -> /etc/sysconfig/i18n,設置 LANG (無效顯示export生效)(YY:i18n有個LANGUAGE設定,不知其含義,刪除無影響)
b、用戶級別 ~/bash_rc、~/bash_profile、~/bash_login、~/profile,讀取有限順序:從左向右;必須顯示export生效
設定 LANG 或者是 LC_ALL 時,則其他的語系變數就會被這兩個變數所取代。總之一句話:在當前用戶設置LANG,是最優方案。