walkor / workerman

An asynchronous event driven PHP socket framework. Supports HTTP, Websocket, SSL and other custom protocols.
http://www.workerman.net
MIT License
11.17k stars 2.27k forks source link

php7 Timer定时器使用异常worker[none:28567] exit with status 139 #58

Closed jackyxie closed 8 years ago

jackyxie commented 8 years ago

这种情况如何排查问题? timer

walkor commented 8 years ago

139是进程收到SIGSEGV信号推出了,应该是Libevnet扩展coredump了。 PHP7的Libevent扩展还没stable,等等再用吧。 或者用ev扩展试下(注意php7版本的ev也没stable)

jackyxie commented 8 years ago

那目前就暂时用不了libevent咯?

walkor commented 8 years ago

PHP7 目前还暂时用不了libevent。小于PHP7的版本可以用

jackyxie commented 8 years ago

哦,好的。忘了是 reusePort才需要php7

joostshao commented 8 years ago

https://github.com/gophp7/gophp7-ext/wiki/extensions-catalog 为什么不能呢?

joelhy commented 8 years ago

PHP7用户可以用Event扩展。注意:Event扩展只支持PHP 5.4+。 libevent扩展,最后更新时间为2013年5月22号,不可能有考虑PHP 7兼容性,不推荐在 PHP 7上使用。 或者使用ev扩展,新版本也有考虑 PHP 7兼容性。

@walkor 建议Workerman\Events里增加对 Event 扩展的支持,并在文档中优先推荐使用这个扩展。

joelhy commented 8 years ago

@walkor 如果启用 Event 扩展支持,示例程序代码Applications/*/Event.php:workerman-chatworkerman-todpole的 Event 类名需要更改成其他名称,或者加上 namespace 以防命名冲突。

walkor commented 8 years ago

感谢 @joelhy 的建议 workerman已经支持了ev扩展。 Event 扩展也会支持,具体时间还没定。

GatewayWorker框架已经支持自定义Event.php的类名,可以避免冲突,但是默认类名仍然是Event,如果要支持Event扩展,还是要兼容下。

lpadilla-nowoptics commented 2 days ago

Is this a valid issue yet? I am facing same similar issue with php 8.2 and workerman 4.1, apache version is: 2.4.52 I am using libevent btw