我正在開發一個web服務應用程序,使用apache cxf。基本上這個webservice所做的是使用hibernate搜索psql數據庫並返回結果。
這項服務的問題在於它有點慢。當我在碼頭上運行LOCALY並讓客戶端請求數據時,VisualVM Profiler指出sun.rmi.transport.tcp.TCPTransport.ConnectionHandler.run消耗了80%的CPU時間。列表中的所有其他功能都低於5%。
我懷疑這個函數涉及將數據從服務傳輸到客戶端。兩者都在本地運行,所以我不希望這個傳輸花費這麼多CPU時間。有誰知道什麼可能導致這種情況?
謝謝!
這是分析客戶端還是服務器進程,還是兩者? – Tim
它佔用80%的「CPU時間」還是80%的「時間」?換句話說,在這段時間內它正在做什麼,或者只是在等待? –
@Branko他使用VisualVM進行分析,我讀過的數據是計算掛鐘時間而不是CPU時間,並且這一觀察結果由沒有CPU使用情況確認。 – Tim