2017-07-25 84 views
0

我在意大利時,它的執行某些operations.The的問題,提出了許多查詢到在意大利數據庫的Java應用程序是,當這個應用程序是由中國發起,它使數據庫查詢在意大利,查詢速度很慢,因此意大利需要2分鐘才能完成的操作在中國最終需要30分鐘。據我所知,問題是由於廣域網對中國的質量差導致的,但是有人知道有關此問題的任何解決方法?謝謝慢查詢到遠程服務器

回答

1

將數據庫和應用程序彼此接近 - 網絡明智的。如果需要的話,每個大陸都有兩面鏡子,儘管這會帶來額外的挑戰。

設置在兩個位置之間的數據庫複製。主站上的更新將被複制到從站。這可能是最佳選擇。它的網絡連接很差,你可以優化什麼是「in」(改進和限制querys),但最終需要時間。

+0

「如果需要保持2個鏡子,每一個大陸,雖然這會帶來更多的挑戰。」 ..你已經寫了,否則這將帶來更多的挑戰和現在我避開它......」 – alvy

+0

,謝謝你爲你的迴應elmig – alvy

0

如果你考慮在你的客戶端代碼更改爲一個可能的解決方案,我建議玩弄Statement.setFetchSize method。通過調整迭代獲取的結果「包裝」的大小,Thiw將允許您優化網絡消耗。

+0

我已經嘗試過,但沒有影響..謝謝反正 – alvy

0

在意大利的起的2分鐘查詢運行是第一個問題。讓中國獲得成果是第二個也是更令人不安的問題。請與我們分享您在意大利general.log中記錄的2分鐘查詢內容以及同一查詢的EXPLAIN EXTENDED結果。需要這些基本信息才能分析當前情況的一部分。