php - Zend 框架的 Multi-Tenancy

标签 php zend-framework multi-tenant

只是好奇人们如何使用 Zend 处理 Multi-Tenancy (特别是目录结构、数据库、模块化、每个租户 View 等)。我自己还没有发现太多,有人吗?

最佳答案

这需要一些工作,但这是可行的。我不确定我的方法在多大程度上遵循 Multi-Tenancy 的最严格定义,但如果它能给您一些想法:

我安装了一个应用程序,它很大程度上遵循推荐的项目结构 ( http://framework.zend.com/manual/en/project-structure.project.html )。然后,我使用该应用程序为每个站点创建一个 ZF 应用程序。它们每个都包含一个到主应用程序的符号链接(symbolic link)(当前位于库文件夹中,尽管这可能会改变)。每个站点应用程序都使用主应用程序的 Bootstrap 类,但它们有自己的配置文件。

该应用程序包含大量模块,每个模块可能会也可能不会在每个站点上启用。我在 Bootstrap 中有一个 _initModules() 方法,它查询数据库以找出应该启用哪些模块。然后以正常方式引导它们。

可以向 Zend_View 添加额外的 View 路径(按顺序检查),因此站点将其自己的 View 路径添加到堆栈中。通过这种方式,站点可以轻松覆盖主应用程序中的 View 。还可以将特定于站点的模型目录添加到 include_path,这将允许站点覆盖应用程序模型,尽管我还没有发现需要这样做(并且可能会对性能产生影响)。

关于php - Zend 框架的 Multi-Tenancy ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1423802/

相关文章:

javascript - 如何使复选框选中 onclick 从下拉列表中选择一个选项 : JS

winforms - 我应该只使用 1 个数据库吗?

ruby-on-rails - Rspec/ capybara `js : true` issue

grails - 什么是基于模块化/组件的开发的最佳架构/设计模式/最佳实践 : part 2

php - 将 Yii2 GridView 与数据数组一起使用

php - 从nodejs服务器发送文件到slimframework

php - 使用 Blogger Post Image API 上传图片

javascript - 这里看不到警报。原因可能是什么?

zend-framework - 基于 session 的表 zend 框架