這就是我們所知道的: 英國的網絡服務器+英國的SQL SERVER 因爲我們無法進行數據庫的實時複製,所以我們爲美國提出了這個解決方案: web美國的服務器+與英國的SQL SERVER交談。海上緩慢的SQL連接
而我們看到一個奇怪的結果,我們得到了頁面的緩慢連接,從代理從美國到英國變得更慢,我們不明白爲什麼。
邏輯對我們說,sql數據比代理(頁面中所有數據的)小。
你有什麼想法嗎?
這就是我們所知道的: 英國的網絡服務器+英國的SQL SERVER 因爲我們無法進行數據庫的實時複製,所以我們爲美國提出了這個解決方案: web美國的服務器+與英國的SQL SERVER交談。海上緩慢的SQL連接
而我們看到一個奇怪的結果,我們得到了頁面的緩慢連接,從代理從美國到英國變得更慢,我們不明白爲什麼。
邏輯對我們說,sql數據比代理(頁面中所有數據的)小。
你有什麼想法嗎?
如果您希望您的SQL數據庫遠離服務器,那麼您需要認真考慮減少使用的順序查詢的數量。
如果您的往返ping對於MySQL服務器是0.2ms,並且您進行查詢,則會等待往返通信。如果順序執行5個往返查詢(也就是說,您在開始第二個查詢之前等待第一個查詢結束),則需要0.2ms * 5 = 1ms。
增加1ms的額外延遲沒有什麼大不了的。你可能不會注意到。
如果您的數據庫服務器位於同一數據中心之外,那麼您可能會至少延遲20毫秒到數據庫。然後連續五次查詢需要100ms。仍然沒有那麼糟糕。
如果您位於數據中心的海洋中,那麼您可能會說100-200毫秒的延遲。然後五個連續的查詢將花費整整一秒的時間返回。
如果您在整個後端使用20-30個查詢,則可能需要10多秒才能加載您的頁面。
解決方案?
謝謝,很好的解釋 – Noamway 2012-04-27 15:43:31