Php 在页面上启动一个大类是否会减慢速度?
我正在编写一个类,这个类可能会有大约3000行代码 我想知道的是非常简单的,在每个页面的顶部启动这个类会降低页面的运行速度吗,即使只会使用一个/两个objects方法?如果我的服务器一天被访问几千次,它会给我的服务器带来更大的压力吗 如果是这样,我应该考虑创建扩展来处理每个方法,而不是将整个类放在一个文件中吗 已编辑 首先,为了纠正KingCrunch和Kenaniah的错误,这个类是针对我的API的,这意味着它包含了很多函数,用于检索网站和iPhone应用程序以及整个Facebook应用程序上显示的数据。因此,考虑到我们网站的规模和功能,3000行非常小,更不用说其中700多行是评论了。所以我可以向你们保证,没有设计缺陷,尽管可能存在结构缺陷,这就是为什么我要问这个问题 构造函数只是将默认值设置为定义的变量,仅此而已 我已经从零开始完全重写了这个文件,因此没有旧代码,我非常确信类中的方法尽可能地高效Php 在页面上启动一个大类是否会减慢速度?,php,class,lines-of-code,Php,Class,Lines Of Code,我正在编写一个类,这个类可能会有大约3000行代码 我想知道的是非常简单的,在每个页面的顶部启动这个类会降低页面的运行速度吗,即使只会使用一个/两个objects方法?如果我的服务器一天被访问几千次,它会给我的服务器带来更大的压力吗 如果是这样,我应该考虑创建扩展来处理每个方法,而不是将整个类放在一个文件中吗 已编辑 首先,为了纠正KingCrunch和Kenaniah的错误,这个类是针对我的API的,这意味着它包含了很多函数,用于检索网站和iPhone应用程序以及整个Facebook应用程序上
我一直在监视我的服务器使用情况等,并使用apache ab工具模拟高流量,虽然我的内存使用率迅速上升,但似乎没有问题。不,实例化一个由大量LOC组成的类不会自动降低速度 也就是说,除非您在构造函数中执行某些操作,但这取决于您在那里执行的操作,而不是类的大小 在每个页面的顶部启动这个类会降低页面的运行速度吗 它会添加到运行时吗?对当然没有什么是免费的。解析的每一行代码都有一些小的开销(不过,您可以通过像APC这样的操作码缓存消除大部分开销)。然而,我们谈论的可能是亚毫秒的开销。唯一可以确定的方法是自己对其进行分析 如果我的服务器一天被访问几千次,它会给我的服务器带来更大的压力吗
从个人经验来看,不是。但再一次,描述和测量你自己。您应该监视服务器上的基本性能指标(CPU使用率、平均负载等)。部署您的更改,并查看您的指标。不,实际上它比将其拆分为多个文件要快 唯一的问题是,这通常会导致一大块代码,而且修改很难完成
编辑:如果所有行都可用,速度会更快。如果您有很多旧代码,您可能会考虑清理< /P> 3000个ROCs类听起来更像是一个设计缺陷,而不是一个性能问题。总之,是的,它会使它慢下来,因为它必须初始化该类。不过,它可能没有你想象的那么糟糕。听起来你可能想看看这个相关的问题:简短回答:是的。答案很长:有无限多的因素会减慢页面的速度。你在3000行代码中丢失的东西可以在别处弥补。3000行代码?你需要重构,因为你肯定做错了什么。为什么不把它分解成小块呢?取出常用函数并创建一个新类。。如果它们是依赖的,继承将有所帮助。因为你只使用了两种方法,如果你仔细看一看,重新设计你的第一部分,那就更好了,这取决于如果他需要3K线,并考虑把它分成多个类,他会一个接一个地把它们装入,这会减慢他的性能。YEP,包括十个300行文件是(有一点)。比包含一个3000行文件慢。同样,墙时间的实际差异可能很小,但是通过自动加载,可能不需要为每个请求加载每个“子类”,这也是使用APC的一个很好的理由