在页面上启动大型课程会减慢它吗?

时间:2012-01-18 18:25:47

标签: php class lines-of-code

我正在编写一个可能最终会有大约3000行代码的类。

我想知道的是非常简单,在每个页面的顶部启动这个类会减慢页面的运行时间,即使只使用一个/两个对象方法?如果它每天被访问几千次,它会给我的服务器带来更大的压力吗?

如果是这样,我是否应该考虑创建扩展来处理每个方法而不是将整个类放在一个文件中?

EDITED

首先,为了纠正KingCrunch和Kenaniah,这个类适用于我的API,结果意味着它拥有许多功能,用于检索要在网站和我们的iPhone应用程序上显示的数据,以及我们的整个Facebook应用程序。因此,考虑到我们网站的规模和功能,3000线非常小,更不用说700多条线路都是评论。所以我可以向你保证没有设计缺陷,虽然可能存在结构性缺陷,这就是我提出这个问题的原因......

构造函数只是将默认值设置为已定义的变量,仅此而已。

我已经从头开始重写了这个文件,所以没有旧的代码,我很确定类中的方法尽可能高效。

我一直在监控我的服务器使用情况等,以及使用apache ab工具模拟大量流量,虽然我的内存使用率很高,但看起来确实没问题。

3 个答案:

答案 0 :(得分:4)

  

将在每个页面的顶部启动此类,从而减慢页面的运行时间

它会添加到运行时吗?是。当然。没有什么是免费的。解析的每一行代码都有一些小的开销(但是你可以通过像APC这样的操作码缓存来消除大部分代价)。但是,我们可能正在讨论亚毫秒的开销。唯一可以确定的方法是自己进行分析。

  

如果每天访问数千次,是否会给我的服务器带来更大的压力?

从个人经验来看,没有。但是,再次,描述并测量自己。您应该监视服务器上的基本性能指标(CPU使用率,平均负载等)。部署您的更改,并观察您的指标。

答案 1 :(得分:1)

不,实例化由大量LOC组成的类不会自动使其变慢。

也就是说,除非你在构造函数中做某事,但那取决于你在那里做什么,而不是这个类有多大。

答案 2 :(得分:1)

不,实际上它比在多个文件中分割它更快。

唯一的问题是,通常会导致大量代码和修改变得更难。

编辑:如果所有行都有用,它会更快。如果你有很多旧代码,你可以考虑清理