2015-10-19 31 views
0

這裏的大問題陳述:創建「喂」出來的

有,讓我在一個CSV形式每隔一小時了一系列的記錄(〜30,000)的數據源。我需要將它轉換爲各種類型的「feed」,基本上每個HTTP GET調用都會返回'n'(0-50)記錄(對它們進行一些計算後)。

每次登錄的人都會看到相同的'n'組記錄。

預期QPS = 5000

我的方法:

由於每小時記錄的總數並不大,並且由於讀得更快,我想我可以處理每一個來電記錄,將'n'個記錄放入列表中。 在delta時間,我會用新的'n'元素替換列表中的元素。

我的問題

  1. 如何更換該名單在每一個HTTP調用被讀取,而不會影響正在進行的閱讀?
  2. 這是甚至正確的方法(完全在內存中)?如果一個簡單的Java方法可以完成上面提到的QPS,我不想使用任何更大的軟件,比如數據庫或消息隊列。

回答

0

如果大小是固定的,則使用Array而不是List。 並且維護2個具有標誌canServe的數組,如果它有效並且保持另一個數組準備好服務,那麼當第一個數組不是有效時。 並在這個數組之間切換。