9

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

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

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

已编辑

首先,为了纠正 KingCrunch 和 Kenaniah,这个类是针对我的 API 的,这意味着它拥有很多用于检索要显示在网站和我们的 iPhone 应用程序以及我们整个 Facebook 应用程序上的数据的函数。因此,考虑到我们网站的规模和功能,3000 行非常小,更不用说其中超过 700 行是评论。所以我可以向你保证没有设计缺陷,尽管可能存在结构缺陷,这就是我问这个问题的原因......

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

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

我一直在监控我的服务器使用情况等,以及使用 apache ab 工具模拟大量流量,尽管我的内存使用量猛增,但似乎还不错。

4

3 回答 3

5

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

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

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

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

于 2012-01-18T18:39:20.643 回答
1

不,实例化一个由许多 LOC 组成的类不会自动使其变慢。

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

于 2012-01-18T18:37:07.100 回答
1

不,实际上它比将其拆分为多个文件要快。

唯一的问题是,这通常会导致一大块代码,并且更难进行修改。

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

于 2012-01-18T18:40:16.570 回答