2011-11-03 54 views
0

我正在考慮採用現有的用於內部使用的php和mysql應用程序的方法(並因此具有單個數據庫而沒有內置任何內容多租賃)。如何處理用戶訪問可以訪問多個數據庫的應用程序

我想這是可能的,也許在某種程度上更好地運行他們自己的數據庫的每個客戶端。我想知道的是,如果提供的證書可以在任何一個數據庫中,並且在某些情況下可能存在多個數據庫,那麼如何最好地處理用戶的登錄。

我曾經想過重複遍歷每個數據庫並檢查有效的憑據。如果憑證以倍數存在,則返回用戶選擇的列表,或者只存在一次,然後登錄。

這是一個有效的解決方案嗎?如果應用程序擴展到擁有數百個數據庫的數千用戶,它會不會開始表現糟糕?

回答

0

我建議爲每個客戶端安裝一個不同的應用程序實例,並使用它們自己的數據庫。

每個客戶端都應該有自己的url來訪問應用程序,而不是讓他們從1個位置訪問,但指向多個數據庫。

這將ADRESS如果從1個位置(多個數據庫)中運行的所有客戶端,你可能會遇到發生了什麼,如果不同的客戶端具有相同名稱的帳戶的一些問題

  1. ?哪個帳戶優先?
  2. 如果客戶想要接管應用程序並將它與其他客戶分開託管,會發生什麼情況。你怎麼能輕易地把這個客戶分成sepetare安裝?

另一點需要注意的是,連接和斷開數據庫是昂貴的。如果用戶登錄時必須執行100次以查找該用戶所在的數據庫,則可能導致系統或數據庫服務器崩潰。

相關問題