很多php文件或一个大的php文件

很多php文件或一个大的php文件,php,mysql,ajax,performance,server,Php,Mysql,Ajax,Performance,Server,我想知道,当网站每天有数百万用户发出数百万次请求时,哪种方法在速度和性能方面更好 怎么了每分钟有数千个投票、关注、添加到收藏夹(值被插入mysql表)等请求 这些只是实例,实际测量值要高得多 方法1 有一个executeQueries.php文件。 executeQueries.php <?php $action = $_POST['action']; switch($action){ case 'vote': #query for inser

我想知道,当网站每天有数百万用户发出数百万次请求时,哪种方法在速度和性能方面更好

怎么了每分钟有数千个投票、关注、添加到收藏夹(值被插入mysql表)等请求

这些只是实例,实际测量值要高得多

方法1 有一个
executeQueries.php
文件。 executeQueries.php

  <?php
   $action = $_POST['action'];
   switch($action){
      case 'vote':
         #query for inserting vote
      break;
      case 'follow':
         #query for inserting follower
      break;
      case 'favorite':
         #query for inserting favorite
      break;
    }
  ?>

方法2 有三个文件

vote.phpfollow.phpfavorite.php


对于Apache+PHP+a PHP缓存方案,这两种方法之间没有性能差异。您拥有的任何PHP文件都将被快速编译和缓存。然后,运行一个PHP文件本质上是一样的,不管它做什么还是只做一件事。代码中的IF测试无关紧要——连接到MySQL并执行UDPATE将是最大的时间消耗。(我是根据在一家大型互联网公司使用这种配置工作了十多年的经验说这番话的。)


普通MySQL配置中的普通插入/更新将以每秒100次左右的速度暂停,原因很简单,就是磁盘速度太快。有很多方法可以解决这个问题。我的观点是,PHP问题不是最重要的问题。

许多较小的文件更容易维护,这比任何性能差异都重要。那么我应该使用方法2吗@如果您不使用操作码缓存或自动加载,那么一个大文件可能会快纳秒。。。。但是使用操作码缓存和自动加载将提供更好的性能,特别是对于许多较小的文件,如果您希望每分钟有数千个请求,那么您应该使用最新版本的PHP和操作码缓存什么是“操作码缓存,或自动加载”@马克,嗯?那么我该怎么做呢?你问“我该怎么做(1)或(2)”,但没有提到选项(3)和(4)以及(5)。我是说(3)“(1)或(2)中的哪一个无关紧要”。那么,掷硬币吧。(4) 是“视情况而定”——但我没有想到任何可能有助于做出决定的潜台词。(5) --嗯,我想还有另一种选择。但我也在说1000个QP可能是个问题。这个问题主要与你的1对3 PHP文件的问题无关。那么解决方法是什么呢?如果我有这样的东西。。。显然,我不能一起查询em,因为单击一次=1插入/更新在这种情况下,您会怎么做@里克詹姆斯