代码之家  ›  专栏  ›  技术社区  ›  Enno Shioji

为什么PHP适合于高流量网站?

  •  31
  • Enno Shioji  · 技术社区  · 14 年前

    今天我很惊讶地得知PHP在高流量的网站中被广泛使用。

    那它为什么表现这么好呢?

    7 回复  |  直到 14 年前
        1
  •  57
  •   ircmaxell    14 年前

    你通常会发现它并不像你想象的那么慢。很多网站之所以速度慢,是因为主机超载。

    但是PHP相对于编译语言的一个主要优点是易于维护。因为PHP是为HTTP通信量而从头设计的,所以与大多数其他编译语言相比,要构建的内容更少。另外,合并更改变得更容易,因为您不需要重新编译和重新启动服务器(就像使用已编译的二进制文件一样)。。。

    我在这两个方面都做了大量的基准测试,对于每秒约5万个请求(基于我的数字)以下的任何地方,使用编译二进制(FastCGI)确实没有什么显著的好处。当然,使用编译后的C会快一点,但是除非你说的是Facebook级别的流量,否则这并不意味着显著的$$。与使用C相比,PHP的相对快速的开发速度肯定是无法抵消的(因为它不是内存管理的,所以很可能需要很多倍的代码)。。。

    PHP,如果写得好的话,是可以伸缩的。限制因素通常在数据库引擎中。这将是一个共同的因素,无论你用什么技术。。。

        2
  •  10
  •   bpeterson76    14 年前

    大型企业环境中的Java部署是一团糟…与可能无法编译的构建和代码作斗争。另外,PHP在一个相当简单的服务器上运行,而不是像Weblogic(或其他)那样庞大的代码,因此其他人的看法是正确的,因为它的开发成本很低,部署在不同的机器上也很便宜。我在一个大的、非常低效的公司环境中工作,而我却在做Java,这当然没有帮助。。。。

    我不会说PHP开发人员本身更便宜(我现在作为PHP开发人员赚的钱比作为javaui开发人员赚的多),但我知道我的上一个雇主付给我的钱是花在配置、部署、编译等PHP不需要的不小的时间。我们讨论的可能是由于新分支推出或发布相关配置而导致的一天/一周的相关配置混乱。所以,我现在得到的额外报酬是由我每周能够完成的大量代码来弥补的。

    MySQL和Postgres(在较小的范围内)变得更加强大,这无疑对PHP有所帮助。他们之间没有直接的联系,但作为一个共同的组合,这对那些做决定的人来说只是一个甜点。

        3
  •  3
  •   erjiang    14 年前

    它的表现并不“那么好”,只是足够好用。不过,请记住,Java和C#.NET在VM中也是作为字节码运行的。使用Zend Optimizer等工具的PHP也可以跳过编译步骤,以字节码的形式运行。

    HipHop-PHP ).

        4
  •  3
  •   GWW    14 年前

    大多数网站在查询数据库等时都存在性能瓶颈。与此相比,脚本执行的时间通常很短。使用libmemcached之类的工具可以帮助缓解这种情况。

        5
  •  2
  •   el.pescado - нет войне    14 年前

    许多网站一开始是低流量网站。一旦你有了你的PHP网站运行,突然你必须处理更高的流量,这是便宜的只是购买更多的服务器比重写你的应用程序从PHP到其他东西。此外,还有一些工具可以提高PHP性能。

        6
  •  2
  •   Imran    14 年前

    HipHop ,但是动态语言的开发速度通常更快,硬件也比开发人员便宜。

        7
  •  -2
  •   mellowsoon    14 年前

    PHP中缺少一个中心引擎也意味着扩展应用程序通常只是简单地将另一个web服务器添加到您的装备中(尽管扩展数据库更为复杂)。我认为,扩展Java/ASP.NET应用程序要复杂得多,而且它们达到饱和点,每次添加更多硬件所带来的提升就更少了。