哪一个性能更好:每页一个控制器或一个控制器中有多个页面?

时间:2013-10-10 07:07:52

标签: php performance apache codeigniter

我只想提出一些关于MVC做事方式的建议。我正在使用codeigniter,我想知道对于Web应用程序每页有一个控制器或者所有页面都有一个控制器,性能是否更好?

2 个答案:

答案 0 :(得分:3)

在我的选择中,你应该为一个逻辑实体使用一个控制器。 例如,如果您正在制作在线商店,您将制作控制器:

  • 带有添加/删除/更新和其他方法的购物车控制器
  • 具有注册/登录/注销和其他方法的用户控制器
  • 带有视图和blablabla方法的目录控制器

以及其他一些东西

答案 1 :(得分:-1)

从概念上讲,MVC会要求您请求单个控制器。但是,在实践中,我们可能需要从各地获取信息。因此,您的问题的答案归结为您的应用程序的设计。

在codeigniter中,您可以使用hmvc方案将代码结构分解为模型。

您仍然会请求一个(主)控制器,该控制器将决定向模块控制器发出请求以进行自己的处理。

如果您没有使用模块化方法,那么您将被“强制”为每个请求使用一个控制器,并通过模型请求或库获取有关页面呈现的其他信息。

我怀疑模块化方法在性能上会有点重,因为有额外的抽象级别,每个控制器加载多次。

相关问题