我在本地使用Graphhopper
獲取兩個緯度/經度之間的行車方向。一切都很好,當我只爲一個國家裝載數據時,我在不到100ms的時間內獲得了結果。現在我已經將數據集加載到了Asia
,結果變得太慢了(有些情況下超過了10秒)。而現在的一些途徑我得到這個錯誤:錯誤com.graphhopper.http.GHErrorHandler - 超出GC開銷限制
ERROR com.graphhopper.http.GHErrorHandler - GC overhead limit exceeded,
java.lang.OutOfMemoryError: GC overhead limit exceeded
我的目標是加載所有的世界的數據,並在不到1秒得到結果。我可以通過哪些性能優化來實現這一目標? 目前我使用的系統是8 GB RAM
。如果需要優化性能,我打算增加內存。
您擁有哪個數據訪問設置,創建的graphhopper文件夾有多大(或發佈了完整的config.properties)。對於JVM的Xmx&Xms設置,使用此大小+ 10%。 – Karussell
例如如果你想快速的結果,那麼你應該**不**使用內存映射設置(MMAP_SYNC_STORE) – Karussell
嘿謝謝你的迴應。增加Xmx和Xms確實有幫助。那麼大概需要多少物理內存來處理全世界的數據呢?這種情況下推薦的設置是什麼? – Rahul