java 多態(tài) JAVA如何實現(xiàn)1秒鐘執(zhí)行1000次數據庫查詢?
JAVA如何實現(xiàn)1秒鐘執(zhí)行1000次數據庫查詢?感謝您的邀請,如果沒有其他條件,只有一個普通查詢,例如:select name from user where id=100;對于這種查詢,主鍵查詢的查
JAVA如何實現(xiàn)1秒鐘執(zhí)行1000次數據庫查詢?
感謝您的邀請,
如果沒有其他條件,只有一個普通查詢,例如:select name from user where id=100;對于這種查詢,主鍵查詢的查詢字段較少,為1000次。如果網絡條件很好,比如本地測試,再加上機器性能好,數據結構簡單,表也不太多。幾乎沒有處理、直接循環(huán)訪問或多線程訪問應該沒有問題。
然而,情況顯然不是這樣。事實上,我希望你能把使用場景弄清楚。這是找到問題的更好方法,而不是猜測。
從前面的例子中,我可以發(fā)現(xiàn)Java頻繁訪問數據庫有很多條件(1000次/秒)。這些條件可能是你的瓶頸。
例如,如果網絡狀況不好,我們應該知道數據庫查詢實際上是套接字網絡TCP連接。包傳輸的延遲可以超過1秒。
例如,一個表有大量的數據。例如,如果有超過100億條記錄,即使是主鍵查詢也不會太快。每秒1000次或更多的訪問將直接破壞常規(guī)數據庫。
相對而言,Java程序的瓶頸并不明顯。問題往往在于查詢前后的邏輯處理。事實上,我們很少有不處理的純查詢操作。