2015-11-01 74 views
0

我有一個日誌服務器,可以從單個網絡上的某些無狀態客戶端接收數據(從外部不可訪問)。我想確保服務器最終收到所有日誌,即使互聯網連接斷開。部署中的高速緩存和重播代理服務器

要做到這一點,最簡單的解決方案是建立一個代理服務器,並讓客戶端登錄到這兩個日誌記錄服務器和代理服務器。代理服務器然後嘗試登錄到日誌記錄服務器,如果失敗,它將稍後緩存該請求。事情是這樣的:

proxy server architecture

注:

  • 所有請求都是冪等。
  • 客戶端是無狀態的(日誌不能在客戶端緩存)
  • 系統的所有部分,除了中間的「internet」步驟,都是可配置的。
  • 代理服務器不需要讀取或修改數據。
  • 客戶端不使用日誌記錄服務器響應。
  • 我無法對客戶端或日誌記錄服務器進行重大更改(雖然Cassandra對此應用程序非常適用)。

我的問題:是否有任何現成的軟件可以作爲代理?如果沒有,寫這些時要考慮什麼?這個計劃有什麼擔憂嗎?

回答

0

您的代理看起來像一個簡單的持久隊列。您只需將連接器添加/配置到日誌記錄服務器即可。

但即使沒有排隊,整個過程看起來像2分貝查詢和2個休息電話 - 你可能會浪費更多的時間來比較不同的產品,而不是自己寫的