使用编译代码和 PHP 加速器来提高性能之间的差异
differences between using compiled code and PHP accelerators for performance
-
最近我读到了关于PhalconPHP的文章。在框架的某些排名中,phalcon 是第一位的,这是因为 phalcon 是作为 C 扩展编写的,这意味着代码不会被解释,因为已经编译过了。
所以我们节省了一步!很好!
-
另一方面,我们在 PHP 中确实有加速器,大多数 PHP 加速器通过缓存 php 文件的 PHP 表示的编译操作码/字节码来工作,以避免在每个请求上解析和编译源代码的开销。
同样,我们节省了一步!
问题是:
1.这两者有什么区别性能不是建筑师?
2.我们是不是应该选择其中之一,不是叫返工吗?
谢谢。
对于这个网站来说,没有特定用例的性能问题有点模糊,请考虑添加您要实现的示例。任何系统的任何性能提升都将在很大程度上取决于代码、数据库、模式等。
话虽如此,我对Phalcon的个人体验是非常积极的。我在 phalcon 中重写了 Zend Framework v1/Doctrine 2 CMS,一些页面的构建速度提高了 10 倍,报告的内存使用量减少了 70%。如果我能帮助它,我不打算每次都回到一个纯粹的PHP框架。
是的,我正在为 ZF/D 代码使用操作码缓存。事实上,我仍然将其用于 phalcon 代码库,它不是非此即彼!
用
APC缓存的PHP仍然是迭代的,例如Java,因此对于许多常见用例,本机代码更快。
相关文章:
- C++中std::resize(n)和std::shrink_to_fit之间的区别
- int(c) 和 c-'0' 之间的区别。C++
- 在cuda线程之间共享大量常量数据
- 在c代码之间共享数据的最佳方式
- Mix_Init和Mix_OpenAudio SDL之间的区别是什么
- C++ 使用 assign 函数的字符串与直接使用 '=' 更改值的字符串之间的区别
- VSOMEIP-2个设备之间的通信(TCP/UDP)不工作
- std::atomic和std::condition_variable wait,notify_*方法之间的区别
- 大小相等但成员数量不同的结构之间的性能差异
- 类与私有变量的其他类之间的线程安全性
- 如何在cpp文件之间切换窗口?在Qt中
- 线程之间的布尔停止信号
- 我是C++编程的新手,这些代码之间有什么区别,我应该使用哪一个
- 在 const 函数中通过引用和指针返回之间的区别
- 我想知道长双倍和双倍之间的区别
- 如何防止clang格式在流运算符调用之间添加换行符<<
- 在两台机器之间进行时间戳的最佳c++chrono函数是什么
- 使用.find函数在c++中查找字符和另一个字符之间的大小
- 构造函数和转换运算符之间的重载解析
- 在c++中的高性能库之间切换