据我了解,ZF2
应用程序中每个启用的模块都会为每个请求加载(除非使用诸如zf2-lazy-loading-module模块提供的优化方法)。我一直在关注发布的模块,modules.zendframework.org
并且遇到了功能极其有限的模块,例如AkrabatFormatUkTelephone模块,其目的是将电话号码格式化为英国格式。
虽然我理解开发应该专注于创建擅长做一件事的单一用途模块(而不是做很多事情但不是很好的模块),但我在想我们是否开始使用提供有限功能的模块前面提到的,我们将需要组合数百个模块来构建一个丰富的应用程序,这可能会对性能造成灾难性的影响。相反,我希望将这种功能放在一个类中(例如Zend\I18n
?)并按需加载,这将更加优化。但是知道阿克拉巴特的名声,我想我一定是遗漏了一些东西,因此我的问题是:
像我提到的那样加载模块的性能是否比通过 PHP 类加载相同的功能要差得多(或者由于 ZF2 的设计方式而相似)?有没有人有关于模块与类加载性能的任何数据(即慢 5%、10%、15%)?