我正在CodeIgniter中构建一个App。我有一个控制器API然后它有大约300个功能。
我想知道这是否是性能方面的问题。任何人都可以帮忙吗?
答案 0 :(得分:1)
一个非常大的控制器需要更长的时间来解析。每次调用Controller中的任何方法时,都会调用并实例化控制器类,因此必须解析整个控制器(更好的是,胖控制器需要在每次请求时按其整数进行解析)。解析更大的文件需要更长的时间,但额外的时间将非常短。
这是我在性能方面可以想到的唯一缺点。
当然,存在许多维护问题。
每次调用其中一种方法时实例化的类的解释
CodeIgniter中的URL路由以这种方式工作:
example.com/controller/method
所以当你访问时
example.com/user/create
create
是控制器类user
中的一个函数。要调用create
方法,必须首先实例化user
类,然后调用该方法。
如果你的控制器类有200个其他函数,那么它们也需要被解析。
如果您现在将浏览器指向
example.com/user/delete
该类的先前实例化不再存在。需要再次解析整个类。