PHP 7.0 读取 memcached 时出现分段错误
PHP 7.0 Segmentation fault when reading memcached
我使用 Laravel 5.5 和 memcached 1.4.21。前面:nginx 服务器(1.10.1)和一个 fpm 进程 PHP 7.0.
Cron 任务使用与网络控制器相同的模型。但是当 cron 加入 memcached 时,进程崩溃并出现 Segmentation fault。相同的代码就像来自 HTTP 请求的魅力一样工作。唯一的区别是 cron 使用 PHP CLI 和 web 控制器使用 fpm 进程。
有时我也会收到此错误消息:
production.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mybase.onefield' doesn't exist
是 "mybase.onefield",Eloquent 尝试使用一个 table 字段代替我的 table 姓名。
我只在生产服务器上遇到问题。你有什么线索吗?
在关注memcached访问问题后,我搜索了与预生产配置服务器的区别,我找到了一个:igbinary版本。
前期制作中:
--> php -i | grep igbinary
Additional .ini files parsed => /etc/php/7.0/cli/conf.d/10-igbinary.ini,
igbinary
igbinary support => enabled
igbinary version => 2.0.1
制作中:
--> php -i | grep igbinary
Additional .ini files parsed => /etc/php/7.0/cli/conf.d/10-igbinary.ini,
igbinary
igbinary support => enabled
igbinary version => 1.2.2-dev
igbinary 管理对象存储到 memcached 的序列化。
更新igbinary后一切正常
救命的命令:
apt-get install php7.0-igbinary
我使用 Laravel 5.5 和 memcached 1.4.21。前面:nginx 服务器(1.10.1)和一个 fpm 进程 PHP 7.0.
Cron 任务使用与网络控制器相同的模型。但是当 cron 加入 memcached 时,进程崩溃并出现 Segmentation fault。相同的代码就像来自 HTTP 请求的魅力一样工作。唯一的区别是 cron 使用 PHP CLI 和 web 控制器使用 fpm 进程。
有时我也会收到此错误消息:
production.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mybase.onefield' doesn't exist
是 "mybase.onefield",Eloquent 尝试使用一个 table 字段代替我的 table 姓名。
我只在生产服务器上遇到问题。你有什么线索吗?
在关注memcached访问问题后,我搜索了与预生产配置服务器的区别,我找到了一个:igbinary版本。
前期制作中:
--> php -i | grep igbinary
Additional .ini files parsed => /etc/php/7.0/cli/conf.d/10-igbinary.ini,
igbinary
igbinary support => enabled
igbinary version => 2.0.1
制作中:
--> php -i | grep igbinary
Additional .ini files parsed => /etc/php/7.0/cli/conf.d/10-igbinary.ini,
igbinary
igbinary support => enabled
igbinary version => 1.2.2-dev
igbinary 管理对象存储到 memcached 的序列化。 更新igbinary后一切正常
救命的命令:
apt-get install php7.0-igbinary