ZF2正在使用Composer进行包管理和分发。我的问题是它是否提供了超过Zend Loader的任何性能提升?
答案 0 :(得分:2)
首先,Zend\Loader
只是名称空间,并提供了诸如Factories,Autoloaders,PluginLoaders,ModuleLoaders等多个类......所以,Zend Loader
!== Composer
并比较不同概念通常是错误的。
第二件事是,作曲家不是“包经理”,你可以在没有作曲家的情况下使用ZF2。来自documentation:
Composer不是包管理器。是的,它涉及“包”或 库,但它在每个项目的基础上管理它们,安装它们 在项目内的目录(例如供应商)中。默认情况下会 从不在全球范围内安装因此,它是一个依赖管理器。
作曲家的主要关注点是在库之间提供简单的依赖关系管理,标准化自动加载过程等。而不是性能。它还为您的项目准备一个自动加载文件,用于由作曲家安装的第三方库中的所有类。这让我们的生活变得更好。
另一方面,Zend Loader命名空间和相关类。官方文档中的这个简短摘要非常简单:
ZF2采用多种自动加载策略;例如,你可以 有一个最常用类的类映射,但想要使用PSR-0 第三方图书馆的样式自动加载器。
关于Zend Loader名称空间下的类的简短摘要:
因此,如果您主要关心的是文件系统级性能,那么您应该专注于类映射自动加载和操作码缓存。 有许多指标会影响整体应用程序性能并且没有灵丹妙药来提升性能。