我曾经看到一篇文章,建议PHP最初只是为了显示静态网页而构建的,而不是为了实际编程而构建的,因此由于内存泄漏,它在长时间执行中具有严重的缺点。
我知道PHP"可以"用于抓取数十个网页,处理音频/视频文件等,但它"擅长"吗?当然,判断它是否擅长某事应该是一个相对的评价。在这种情况下,ASP/node.js/Python 将是比较。
PHP7.x 是否已改进或适应长时间执行?
这是一个一般的问题,而不是特定的问题。但我认为这篇文章可能会给很多人提供有用的见解。
PHP 对于编写长时间运行的进程来说并不是一个糟糕的选择,主要是从 mod_apache 或 PHP-FPM 启动长时间运行的进程变得过于复杂。
有完整的Web服务器,WebSocket服务器,以及更多用纯PHP编写的服务器,并且运行时间很长,并且运行良好,执行速度可能不如Node.js或Python快,但对于网络/数据库绑定的工作负载,我认为不会有显着差异。
如果你习惯用PHP编程,那么我建议使用它是一个不错的选择。
基于PHP的服务器的一些示例:
- https://reactphp.org/
- https://github.com/appserver-io/webserver
这两个示例都是用 PHP 编写的非阻塞服务器。