我正在創建dot net API服務,它將託管在Web服務器場中並可在多個服務器上訪問。這是一個更新信封服務,所以我不需要多個用戶同時更新同一信封。有什麼辦法可以讓我擁有一個全局緩存或者類似的東西來保存當前的信封被更新,並且當多個用戶同時更新同一個信封時拋出一個錯誤?我嘗試了鎖定機制,但看起來像只適用於單個服務器系統。c中的全局緩存機制#
0
A
回答
0
我會假設你必須編寫你自己的鎖定機制。
即使他們要在同一臺計算機上運行,不同的服務器在很大程度上並不知道對方。你必須有一臺中央服務器,讓你所有的服務器連接並'詢問'他們是否可以編輯信封。
這不會是微不足道的。在我的評論中提到
0
正如,你可能想看看分佈式鎖或Semaphore設計模式。有很多方法可以實現這個功能。
你提到了Cache,所以我建議你看看Distributed locks with Redis。或者如果你對RabbitMq更熟悉,你可以在RabbitMq中使用Distributed Semaphore。
相關問題
- 1. 線程安全緩存機制(而不是.NET內置緩存)ASPX C#
- 2. 全局程序集緩存中的Microsoft.SqlServer.Types.dll?
- 3. 全局禁用jboss中的EntityManager緩存
- 4. python全局對象緩存
- 5. 全局禁用緩存.NET
- 6. React jQuery AJAX全局緩存
- 7. 不能有全局緩存
- 8. jQuery全局選擇「緩存」
- 9. 在$ .get()中全局緩存爲false
- 10. 的Java緩存機制
- 11. .NET的緩存機制
- 12. OpenCL中的全局內存限制
- 13. C全局和內存
- 14. 使用全局緩存for openjpa 2
- 15. 使用全局變量緩存值
- 16. Rails 3:緩存到全局變量
- 17. 全局程序集緩存和DLL
- 18. 實體框架DBContext全局緩存?
- 19. 全局程序集緩存重定向
- 20. 創建全局非緩存變量
- 21. 製作指針全局C++
- 22. C中是否存在全局斷言?
- 23. C#中如何存在全局函數?
- 24. Android中是否有SQLite緩存機制?
- 25. 從C#中控制IIS7的緩存#
- 26. 嘗試全局緩存C#WebService中的數據,但遇到問題
- 27. 類型安全的C#通用緩存
- 28. C/C++:緩存相機數據
- 29. 全局緩存的全局變量vs.常量與類實例變量
- 30. 全局內存與CUDA中的動態全局內存分配
歡迎來到SO。請閱讀這個[how-to-ask](http://stackoverflow.com/help/how-to-ask)並遵循那裏的指導原則,用附加信息來完善您的問題,例如代碼和錯誤消息來描述您的編程問題。 – thewaywewere
您需要查看分佈式鎖定模式。有很多方法可以實現這一點,但看到你提到緩存,我建議你看看https://redis.io,它可以用作分佈式緩存和鎖定設施。 –
@JanusPienaar - 你可以在郵件回答部分發表你的答案嗎?當你在這裏發帖時,我無法給你最終的解決方案 –