2012-08-04 30 views
1

我需要顯示每秒100000個移動號碼的國家/地區名稱。所以使用我的mysql或文本文件來存儲數據以便快速訪問

  1. 從手機號碼我需要找到前綴
  2. 從前綴,發現國名。

方法1:(Mysq1) 店prifix,數據庫中的國名和訪問

方法2:(文本文件) 店鋪國名在文本文件中。例如馬來西亞的前綴是60.所以在測試文件「60.test」 中存儲「馬來西亞」以獲得國名使用file_get_contents(「country/60.txt」)

哪種方法會很快?

+0

請MySQL的一切,可以輕鬆處理如此多的數據。您可以使用索引優化您的查詢。 – 2012-08-04 08:12:18

+1

方法1,但如果您正在按請求/圖像激活進行多個查找,則內存中鍵控陣列的速度會更快。如果沒有,那麼不要擔心MySQL時間,請求啓動/關閉開銷將佔主導地位,併成爲您的問題。 – TerryE 2012-08-04 08:19:25

回答

1

假設一個 '正常' 的Web服務器,您有幾種選擇:

  1. 使用數據庫。這將是快速和簡單的。對於最大速度使用內存表,如果可能的話使用持久連接(不建議在正常情況下,當然不是在使用事務時,一般情況下不推薦)
  2. 使用文件系統,將工作,但不是它設計的地方,維護數據集將地獄,將不會足夠快
  3. 使用memcache或類似的東西緩存跨請求的內存結構(關聯數組左右),最初從文件或數據庫中加載它。

我會去的選項1,除非性能是不夠的,然後使用選項3.

相關問題