Solaris
JVM (1.6.0_22) 在 Solaris 10 上呼叫 OS 命令的性能問題
我的高級問題是我的建構工具 (Maven) 在 Solaris 10 環境中突然變得非常慢。一個需要 8 分鐘的建構現在需要 50 分鐘。
我將這個問題縮小到一個 Maven 外掛反複呼叫
Runtime.getRuntime().exec("env");
這使得 JVM(版本 1.6.0_22)在作業系統上呼叫“env”命令。
每個呼叫大約需要 1.5 秒,而在其他 Solaris 10 機器上則需要幾毫秒。
機器重啟一次有幫助,幾週後一切又恢復正常。現在又壞了,重啟也沒有用。
謝謝
可能是錯誤6970542
嘗試設置:
導出 DTRACE_DOF_INIT_DISABLE=1
我已經在許多正常工作的測試機器上看到了這個問題,然後開始變得非常緩慢的啟動時間。在 JDK 1.6.0_26 上它再次正常工作。
也許分叉目前程序需要比預期更長的時間。所以這不是作業系統命令呼叫的問題,而是JVM /執行緒的問題:
https://stackoverflow.com/questions/3910760/does-runtime-getruntime-exec-have-a-bad-performance 間歇性的行為可能是這裡的指針。