最新公告
  • 欢迎您光临三优资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • zend opcache引起Apache 不时挂掉

    1、可能解决方法一:

    系统:windows 2008 r2

    环境:apache 2.4.9 (64)+php 5.5.14 (64)
    运行组件:所有运行组件均以安装,且均为64位版
    症状:opcache 默认配置开启,运行大概10-30分钟,apache 假死崩溃,系统日志可看到以下错误,

    1,无法找到来自源 Zend OPcache 的事件 ID 487 的描述。本地计算机上未安装引发此事件的组件,或者安装已损坏。可以安装或修复本地计算机上的组件。
    如果该事件产生于另一台计算机,则必须在该事件中保存显示信息。
    以下是包含在事件中的信息:
    Unable to reattach to base address
    试图访问无效的地址。
    2,错误应用程序名称: httpd.exe,版本: 2.4.9.0,时间戳: 0x53258cd5
    错误模块名称: php5ts.dll,版本: 5.5.12.0,时间戳: 0x53614545
    异常代码: 0xc0000005
    错误偏移量: 0x000000000001ed3a
    错误进程 ID: 0x46c
    错误应用程序启动时间: 0x01cf8e08bd43da8e
    错误应用程序路径: D:\upupw\Apache2\bin\httpd.exe
    错误模块路径: D:\upupw\Apache2\bin\php5ts.dll
    报告 ID: a356f798-f9fe-11e3-a5ea-902b346c2007

    官方给的解决方案是
    http://www.php.net/manual/zh/opcache.configuration.php
    修改php.ini 里opcache 配置

    opcache.mmap_base    默认值为空

    在 Windows 平台上共享内存段的基地址。 所有的 PHP 进程都将共享内存映射到同样的地址空间。 使用此配置指令避免“无法重新附加到基地址”的错误。实验错误,没解决。这个问题,我提交过几次给论坛,火锅也积极解决了,但都没解决.

    无意中从国外1个网站复制了解决方式,opcache.mmap_base = 0x20000000 ,经过在服务器上稳定运行了24+小时。日均pv 1.3W,没有出现假死,算是完美了。这个问题我也准备提交给火锅,默认的配置下是没有这段配置的。

    2、可能解决方法二:

    PHP 扩展 OPcache 针对 Moodle 的配置要求

        从 Moodle 2.6 开始,PHP 的扩展 OPcache 就被强烈推荐使用。OPcache 可以提升 Moodle 网站的性能,并降低内存的消耗。PHP 5.5 开始包含了 OPcache 扩展。微软今年已经推出了 Microsoft Drivers 3.2 for PHP for SQL Server,能够支持 PHP 5.6。我终于可以把 PHP 版本升级到 5.6 了,那顺理成章也要配置启用 OPcache 了。

    首先在 php.ini 中要添加扩展的文件名。

    [PHP_OPCACHE]
    zend_extension=php_opcache.dll

    然后根据 Moodle 官网的文档配置 OPcache 的参数项。

    [opcache]
    opcache.enable = 1
    opcache.memory_consumption = 128
    opcache.max_accelerated_files = 4000
    opcache.revalidate_freq = 60

    ; Moodle 要求的设置
    opcache.use_cwd = 1
    opcache.validate_timestamps = 1
    opcache.save_comments = 1
    opcache.enable_file_override = 0

    ; 如果 Moodle 中出现某些问题,可尝试用以下配置解决
    ;opcache.revalidate_path = 1 ; 可以修复 include 路径的问题
    ;opcache.mmap_base = 0x20000000 ; (仅针对 Windows) 修复 OPcache 出现事件 id 487 的崩溃

    ; Moodle 2.6 及以上版本的实验用途
    ;opcache.fast_shutdown = 1 ; 使用快速停止续发事件
    ;opcache.enable_cli = 1 ; 加速 CLI cron
    ;opcache.load_comments = 0 ; 可减少内存使用,可能与插件及其它应用不兼容

    对于 max_accelerated_files 参数的说明:

    这是 OPcache 哈希表中可存储的脚本文件数量的上限。实际的取值是在质数集合 { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987 } 中找到的第一个比设置值大的质数。设置值的取值范围是 200 到 100000 之间。Moodle 中建议设置为 4000,实际值就是 7963。Moodle 中核心的 php 文件数量不会超过这个数字,但是如果增加了插件或者做了二次开发,缓存的 php 文件数量大大超过 7963,那就建议把 max_accelerated_files 设置为 8000。

    1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!3165260857@qq.com
    2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
    3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
    4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励和额外收入!


    三优资源网 » zend opcache引起Apache 不时挂掉

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    三优资源网
    一个高级程序员模板开发平台

    发表评论

    • 98会员总数(位)
    • 752资源总数(个)
    • 4本周发布(个)
    • 0 今日发布(个)
    • 210稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情