1

我正在 CodeIgniter 中构建一个应用程序。我有一个控制器 API,然后它有大约 300 个函数。

我想知道这是否是性能方面的问题。任何机构都可以提供帮助吗?

4

1 回答 1

1

一个非常大的控制器将需要更长的时间来解析。每次调用 Controller 中的任何方法时,都会调用并实例化控制器类,因此必须解析整个控制器(更准确地说,胖控制器需要在每个请求中解析一次)。解析较大的文件将花费更长的时间,但是额外的时间将非常短暂。

这是我在性能方面能想到的唯一缺点。

当然,还有很多维护问题。

“每次调用其方法之一时实例化的类”的解释

CodeIgniter 中的 URL 路由是这样工作的:

example.com/controller/method

所以当你访问

example.com/user/create

create是控制器类中的一个函数user。要调用create方法,user必须先实例化类,然后调用方法。

如果你的控制器类有 200 个其他函数,它们也需要被解析。

如果您现在将浏览器指向

example.com/user/delete

该类的先前实例化不再存在。整个类需要再次解析。

于 2012-05-30T18:51:52.220 回答