为什么要使用APC ? 经过一些压力测试(使用apache ab工具),得出以下结果:
1. 使用ab发起相同请求参数,启用APC后,服务器负载降低一半,也就是说启用APC后,服务器负载能力提升约2倍。
2. 启用APC后,脚本执行速度约有20%-30%提升,这也是使用ab的测试报告总结。
3. 我曾经在生产环境使用第三方的缓存,如xcache, eAccelerator, 结果很不稳定,导致php-fpm负载变得很高(也可能是我参数配置不当引起)
4. APC毕竟是PHP官方的扩展,对其更信赖一些。
5. 后来,凡是安装PHP,我必定会安装APC扩展。就没有尝试过别的缓存模块(也是一朝被蛇咬,十年怕井绳的心理在作怪)
但这次我在使用较新的 php 5.4.14, APC 3.1.9时,遇到一些问题
OS : RHEL 5.6 x64
PHP : 5.4.14
APC: 3.1.9
使用fpm方式编译,APC以PECL扩展方式安装,启动php-fpm进程时,报错:
restarting /usr/local/php/sbin/php-fpm ...
*** glibc detected *** /usr/local/php/sbin/php-fpm: free(): invalid pointer: 0xb74b0910 ***
======= Backtrace: =========
/lib/libc.so.6[0x3f47595]
/lib/libc.so.6(cfree+0x59)[0x3f479d9]
/usr/local/php/sbin/php-fpm(destroy_zend_class+0x202)[0x83fd8f2]
/usr/local/php/sbin/php-fpm(zend_hash_clean+0x66)[0x8413566]
/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so(apc_interned_strings_shutdown+0x35)[0xabc605]
/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so(apc_module_shutdown+0x14d)[0xab3c2d]
/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so[0xaaa65f]
/usr/local/php/sbin/php-fpm[0x840c3b2]
/usr/local/php/sbin/php-fpm[0x8413018]
/usr/local/php/sbin/php-fpm(zend_hash_graceful_reverse_destroy+0x18)[0x8413258]
/usr/local/php/sbin/php-fpm(zend_destroy_modules+0x2c)[0x840d6cc]
/usr/local/php/sbin/php-fpm[0x8407797]
/usr/local/php/sbin/php-fpm(php_module_shutdown+0x2a)[0x83ab5da]
/usr/local/php/sbin/php-fpm[0x84adf2b]
/usr/local/php/sbin/php-fpm[0x84a5534]
/usr/local/php/sbin/php-fpm[0x84b3930]
/usr/local/php/sbin/php-fpm[0x84a48d7]
/usr/local/php/sbin/php-fpm[0x84abea9]
/lib/libc.so.6(__libc_start_main+0xdc)[0x3ef3e9c]
/usr/local/php/sbin/php-fpm(realloc+0x9d)[0x806ec81]
解决办法:使用APC 3.1.13,但这个版本的APC还是beta版本,在生产环境中是否稳定,还需要观察
下载地址:http://pecl.php.net/package/APC/3.1.13
相关推荐
Altium Designer 19 原理图复制出现InvalidParameter at AdvSch.dll, Base Addre... 报错的解决办法
invalid pointer operation(解决方案).md
Invalid Pointer(解决方案).md
invalid pointer type(解决方案).md
An invalid pointer is one that points to an address that is not accessible or has been deallocated. ##### Common Issues with Pointers - **Dangling Pointers**: Pointers that point to memory that has ...
以下是一些常见的 Fluent 报错及其解决办法: 1. **双击无法打开 cas 或者路径出现乱码**: - 这个问题通常是由于文件路径中包含了中文字符,而 Fluent 不支持中文路径。解决方法是将包含文件的路径全部改为英文,...
invalid this pointer(解决方案).md
报错信息如下: ``` Collecting pip Using cached https://files.pythonhosted.org/packages/da/f6/c83229dcc3635cdeb51874184241a9508ada15d8baa337a41093fab58011/pip-21.3.1.tar.gz Complete output from ...
MindSpore报错解决地图2022.10.21主要涵盖了MindSpore在深度学习过程中遇到的各种常见问题及其解决方案。这些问题大致分为两类:数据加载与处理问题,以及网络构建与训练问题。 在数据加载与处理方面,MindSpore...
### Python 3.7+ 安装 PySpider 报错解决方案 #### 环境配置 在开始之前,我们先了解下本次问题解决所处的环境背景,这有助于更好地定位和解决问题。 - **操作系统**: macOS - **Python 版本**: 3.7 #### 遇到的...
### "format ' x' invalid or incompatible with argument" 解决办法 在进行电子设计自动化(EDA)软件Protel 99 SE的操作过程中,用户可能会遇到一个常见的错误提示:“format ' x' invalid or incompatible with ...
今天在项目中,使用Mybatis对oracle数据库进行操作的时候,报出ORA-00911: invalid character的错误,检查...以上所述是小编给大家介绍的Mybatis出现ORA-00911: invalid character的解决办法,希望对大家有所帮助,如果
**解决方案2**:使用 `do {} while(0)` 循环结构 通过循环结构确保即使在异常情况下,也能够执行到释放资源的代码。 ```c void ex_fun() { do { if (Error1) { break; } // 其他逻辑 } while(0); // 释放...
### VMware Workstation Pro 14 导入 OVA 报错问题解决方法 在使用 VMware Workstation Pro 14 进行虚拟机部署时,可能会遇到导入 OVA 文件时出现错误提示:“Invalid target disk adapter type: pvscsi”。这个...
在使用过程中,用户可能会遇到各种错误,其中一种常见问题是“InvalidParameter at AdvSch.dll, Base Address…”报错,这通常发生在尝试复制原理图时。这个错误提示涉及到了Altium Designer的核心组件AdvSch.dll,...
当Visual Studio报错“invalid handle”时,意味着程序尝试使用的句柄(handle)无效。在Windows操作系统中,句柄是用于标识进程、线程、文件、窗口等对象的标识符。当句柄被错误地创建、使用或释放时,就可能导致...
总的来说,从长远考虑,升级到phpspreadsheet是最理想的解决方案,它不仅解决了PHP7.4的兼容性问题,还提供了更好的性能和更多的功能。同时,注意定期更新和维护你的代码库,以适应不断变化的PHP环境。
python连接hbase需要用到hbase-thirft类库,但是hbase-thirft只在python2下能正常使用,如果在python3下,会报错,主要有一下几个错误 except IOError, io: SyntaxError: invalid syntax ModuleNotFoundError: No ...
有个项目在mac下开发,安装包npm i,一切正常; 把这个项目放到linux机器上,安装包npm i,报了一堆warning: npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.2.7 (node_modules/chokidar/node_...