ZF2架构。 api,admin,client等的模块或单独项目

时间:2014-04-15 08:36:50

标签: php architecture zend-framework2 structure

我正在开发具有控制台逻辑,restfull API,管理员和客户端网站的项目。

我已经开始在单个ZF2应用程序中构建所有这些。我正在使用应用程序模块用于客户端网站和控制台逻辑,API模块用于API和管理模块用于管理员网站。然后我开始编写单元测试我意识到然后我正在调用我的代码的一部分每个模块都被加载(例如当我调用控制台脚本时,巫婆只能通过IMAP使用电子邮件我的api文档工具swagger正在打印警告关于没有服务器名称。)

我认为这会降低应用性能,更改一部分可能会破坏另一部分。而且所有部分都非常不同(Console,Restfull和html输出。不同的插件,供应商等)。

现在我想我该如何解决这个问题。我想保留结构:http://mysite/api用于API,http://mysite/admin用于管理员,http://mysite/用于客户端站点,php index.php action用于控制台脚本。

我该如何解决这个问题?我应该将所有这些部件拆分为单独的ZF2应用程序,还是应该使用相同的项目,但是,使用一些不同的自动加载器。或许还有其他一些好的做法?

1 个答案:

答案 0 :(得分:0)

不要重新构建整个应用程序,以修复您认为可能存在的性能问题。 ZF2的模块引导开销非常低。如果您的模块完全没有相互依赖关系,请尝试将应用程序作为基线进行基准测试,然后尝试禁用一个模块以查看它产生的差异。如果它没有太大的区别,我会保持原样。