我必須在j2ee中開發一個多租戶SaaS應用程序,並從Iaas和PaaS開始實施三個雲模型,我選擇openshack with openshift起源。 對SaaS應用程序的第一準則是多租戶,我知道有3種方法來實現它 - 單獨的數據庫 - 共享數據庫,不同的模式 - 共享數據庫,共享模式 我這裏迷路,因爲像很多框架ATHENA,ORM就像休眠一樣,還有TOPLINK。我需要幫助來了解實現多租戶Java應用程序的最佳方法。J2EE多租戶SaaS應用程序
0
A
回答
1
我喜歡共享數據庫共享模式方法 - 廣義上說,每個表都有一個org_id列,每個查詢都以當前用戶org_id作爲過濾器運行。
我喜歡這種方式,因爲你可以分片數據庫根據每個租戶大小
我會完全跳過一個ORM平衡巨大的租戶小租戶,而不必自定義比例,太容易亂七八糟的東西多租戶部署,並使用MyBatis解決方案,這樣可以對查詢進行驗證和審覈,因爲它們都集中在少數地方而不是遍佈整個代碼。
如果你真的需要一個ORM,我知道Hibernate自帶了its own support,但我不喜歡圖書館在特定的數據結構上強制我,因爲它帶走了靈活性。只要確保獲得會話的唯一方法就是自動添加租約,如果這是手動過程,則很容易讓開發人員陷入困境。
你可以找到很多的資源,在這裏不同的方法一定的成本效益分析http://msdn.microsoft.com/en-us/library/aa479086.aspx
相關問題
- 1. SaaS多租戶應用程序Jumpstart
- 2. 多租戶Web/SaaS應用程序
- 3. 多租戶SaaS參考應用
- 4. 多租戶SaaS應用程序的最佳方法
- 5. Azure上的多租戶(SaaS)Web應用程序,部署選項
- 6. 多租戶SAAS應用程序的數據庫設計和ORM
- 7. 確保SPA多租戶SaaS應用程序
- 8. 在SaaS多租戶RESTful應用程序中暴露ID
- 9. 確保多租戶SaaS應用程序的安全
- 10. 多租戶SaaS應用程序的數據庫架構
- 11. 應用程序角色Azure中的多租戶Saas應用程序
- 12. windows Azure多租戶與單租戶的SaaS應用
- 13. 開發多租戶SaaS
- 14. 多租戶Saas建於yii2
- 15. Django中的多租戶SAAS
- 16. 使用nodejs的多租戶(SAAS)sequelize
- 17. 使用.NET和IIS的多租戶SaaS
- 18. 製作Tomcat多租戶用於SaaS
- 19. 最適合多租戶/多模板SAAS應用的Web框架
- 20. SaaS多租戶應用程序:如何實施數據導入/導出/備份?
- 21. Azure AD B2C多租戶應用程序
- 22. 多租戶應用程序中的facebookredirect.axd
- 23. 多租戶應用程序 - SSL證書
- 24. ASP.NET多租戶應用程序
- 25. Azure AD多租戶應用程序
- 26. React中的多租戶應用程序
- 27. Azure Active Directory |多租戶應用程序
- 28. Azure多租戶應用程序
- 29. MVC3多租戶應用程序
- 30. 多租戶Seam + JPA應用程序
「只要確保只有這樣,才能自動獲得一個會話中添加租賃,太容易把事情搞得一團糟了開發者如果是一個手動過程「。 - 請您詳細說明 –
通常開發人員會去EntityManager(JPA)或SessionFactory(Hibernate)或SqlSessionFactoryBuilder(MyBatis),或者你有什麼。然後他們得到一個聲明,如果他們走這條路線,他們必須添加所有聲明'和租者=:tenantid',他們必須從會話中獲得租戶並通過它。太多的失敗點:將它包裝到一個對象中,該對象允許創建只有強制注入tenant子句的statement/query/object,以使開發人員不得不記住它。 –
感謝您澄清:) –