我知道 PHP 代码被编译为字节码并在每次运行时重新执行(即在每个页面请求上)。所以引擎应该在每个请求上重新定义所有使用的类、函数、变量等。
当使用像 Laravel 或 CakePHP 这样的全栈框架时,这也意味着在每个请求上都会一次又一次地完成相同的引导工作,比如解析配置文件、注册路由、自动加载类等。
这似乎是处理此类事情的非常不理想的方式。甚至缓存,无论是 OPcache 还是框架缓存系统,都没有足够的帮助,因为仍然需要执行脚本。
另一方面,基于 NodeJS 或 Ruby 等引擎的应用程序在启动期间只编译和引导一次。所以我想他们应该比 PHP 有更好的可扩展性。
但是 PHP 如此流行,甚至 Facebook 也使用它。所以我想知道,对于一个可能会承受重负载的网站来说,什么是正确的选择?出于这种目的使用带有全栈框架的 PHP 是一个坏主意吗?