JVM 調整
系統提供了一些建議的 JVM 設定,可對應進行的一些 ThingWorx 效能進行最佳化。微調超出下面所列值的 JVM 參數是特定於工作負載的,具體視 ThingWorx 所建構的應用程式而定。如需根據您的環境進行特定調整,請聯絡 PTC 支援。
強制設定
設定
描述
-server
明確告知 JVM 在伺服器模式下執行。這適用於預設使用 64 位元 JDK 的情況,但最好對此進行宣告。
-d64
明確告知 JVM 在 64 位元模式下執行。目前 JVM 會自動偵測到此設定,但最好對此進行宣告。
XX:+UseG1GC
告知 JVM 使用 Garbage First Garbage Collector。
-Dfile.encoding=UTF-8
告知 JVM 使用 UTF-8 作為預設字元集,以便非西方語言字母正確顯示。
-Djava.library.path
指定原生資料庫的路徑。
-Xms3072m (適用於記憶體為 4GB 的系統)
告知 JVM 為 Tomcat 處理程序至少分配 3072 MB 的記憶體。這應設定為可用系統記憶體的 75%。
* 
記憶體量需要依實際環境進行調整。
-Xmx3072m (適用於記憶體為 4GB 的系統)
告知 JVM 限制 Tomcat 處理程序的最大記憶體。這應設定為可用系統記憶體的 75%。
* 
記憶體量需要依實際環境進行調整。100,000 個物件至少需要 5 GB 的記憶體。
* 
將記憶體的最小和最大量設為相同,是為了減少 JVM 重新評估所需記憶體和重新調整執行時間分配大小的需求。建議對主控與/或公開環境使用此設定,但對於開發和測試環境,使用 -Xms512m 即已足夠。此外,核對餘下的記憶體是否足以允許作業系統運作。
可供啟用 JMX 監視的選用設定
如果懷疑存在記憶體問題,請參閱下列工具以獲取有關監視系統的詳細資訊:列出的設定可將這些工具連線到 ThingWorx 用於監視 JVM 特性的 Tomcat 實例。
設定
描述
-Dcom.sun.management.jmxremote
通知 JVM 您計劃透過 JMX 進行遠端監視
-Dcom.sun.management.jmxremote.port=22222
JVM 應開啟以進行監視的埠。
-Dcom.sun.management.jmxremote.ssl=false
無 SSL 使用關係。
-Dcom.sun.management.jmxremote.authenticate=false
無須驗證。
-Djava.rmi.server.hostname=<主機或 IP>
基礎 RMI 用戶端連接將會使用的主機名稱或 IP。