我有一個在Azure中部署的漂亮標準(Asp.Net Core)Web應用程序。我正在使用多個不使用會話關聯的應用程序服務器,因此同一用戶在後續請求中可能會遇到不同的服務器。分佈式Web應用程序Azure DocumentDB一致性
我想使用Azure DocumentDB爲我處理一些數據存儲。使用模式是每個登錄用戶每分鐘發出一次命令10次以讀取並更新數據記錄。每個用戶將讀取和寫入一條記錄。每個用戶都有自己的記錄。
讀取關於一致性DocumentDB文檔後,我留下了他們是如何工作的幾個問題。
我的要求是
- 用戶必須經常閱讀最新版本的記錄,也不管它們連接,而他們在登錄該應用服務器的。
- 如果用戶註銷,然後重新登錄在稍後的某個時間點(可能是30秒,可能是一個小時),他們需要閱讀最新版本的記錄,包括可能發生的任何寫入。
- 我需要DocumentDb的區域故障轉移功能。這似乎排除了「強」的一致性水平,否則我很樂意爲此付費。
我在想我需要使用「會話」一致性,但我不確定如何處理web場場景中的SessionToken。
我想我可以在SessionToken存儲爲一個cookie,但什麼是DocumentDB「會話」的壽命?文檔似乎對此沒有提及。另外,如果用戶註銷並返回並且會話過期會發生什麼情況?
也許我沒有寫的是如何內DocumentDB複製,也許在如何解決這一切都配置爲DocumentDB讀/寫區有充分的瞭解?
如果我有一個主讀/在我的主數據中心區域和寫DocumentDB次要「讀」 DocumentDB在另一個區域,這是否解決我的一致性和故障轉移的要求?
任何澄清將不勝感激!
的答案,但請發送電子郵件askdocdb微軟科網你想要更詳細 –