簡體   English   中英

Web 場中的並發登錄

[英]Concurrent logins in a web farm

我真的是通過代理問這個問題,另一個工作團隊收到了我們客戶的變更請求。

問題是我們的客戶不希望他們的員工同時使用一個或多個用戶登錄。 他們被鎖定並共享登錄信息。

由於這是在網絡農場上,解決此問題的最佳方法是什么?

緩存到數據庫不會導致性能問題嗎?

您可以考慮使用像memcached這樣的分布式緩存系統

它可以很好地解決這個問題(它比數據庫快得多),並且也非常適合緩存其他任何東西

這只是做生意的成本。

是的,緩存到數據庫比緩存在您的網絡服務器上慢。 但是您必須將該狀態信息存儲在一個集中位置,否則一個網絡服務器將不知道哪些用戶登錄到另一個網絡服務器。

假設:您正在嘗試防止單個用戶進行多次並發登錄。

登錄和注銷時的數據庫操作不會導致性能問題。

  • 如果您使用的是緩存代理,則會導致問題:
  • 用戶將注銷,但在注銷到達緩存之前將無法重新登錄

您最大的潛在問題可能是:

  • 如果應用程序/框崩潰而用戶沒有機會注銷,則用戶在數據庫中的狀態將保持“登錄”狀態。

這取決於如何進行身份驗證。 如果您存儲上次成功登錄的日期時間(無論后端如何),那么也許您可以更改架構以存儲標志“logged_in”,並且不會涉及額外的性能成本。 (好吧,一點都不干凈)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM