2012-03-30 33 views
2

我正在研究模塊化的Java Web應用程序。模塊(可見層)和業務/數據庫層之間的依賴關係由gradle解決。所以從技術上講,我的數據庫只需要保存實體的表格,這些表格實際上是由已部署的可見模塊使用的。但是,當我想要在生產環境中遷移數據庫時,這可能會導致潛在的問題。因此,除了從依賴關係創建數據庫模式之外,我看到兩個選項:模塊化數據庫佈局:我的用例的正確方法是什麼?

1)我總是對所有可用實體都有一個模式。因此,我的實際數據庫包含所有實體的表,即使沒有任何已部署的模塊也使用這些表。這使得在生產環境中的遷移變得非常容易,但是在開發過程中會混淆數據庫和保存實體的文件夾。

2)我有幾個獨立的模式,它們在邏輯上是分開的。每個模式都會在服務器上產生一個數據庫。需要哪些模式,由模塊依賴關係解決。我爲自己遷移每個模式。所以遷移仍然是可以管理的。

對數據庫的服務器應該是這樣的:

  • MySqlServer
    • AuthorizationDatabase
      • 用戶表
      • RoleTable
      • UserRoleRelationshipTable
    • BlogPostDatabase
      • PostTable
      • CommentsTable

等。

不過,我不知道如果許多較小的數據庫,而不是一個整體的數據庫的想法會導致潛在的麻煩。特別是在表現方面。

回答

0

我會建議一個單一的數據庫,原因如下:

一)MySQL能夠處理取決於可用的服務器資源

B)幾千個表更容易管理

Ç )如果客戶羣增長超出一臺服務器的限制,則可以創建一個新服務器來處理新一批客戶,然後再擴展該服務器

相關問題