由于laravel项目中集成了workerman,因业务需要,需要使用异步的mysql和redis组件。

composer require react/mysql
composer require clue/redis-react

安装完成后,直接导致workerman无法启动,并报错。

EventException  : EventBase cannot be constructed with the provided configura
tion. Make sure that the specified features are supported on the current platform.

然后一顿百度,google,发现在github上有人已经提交了bug。

https://github.com/reactphp/event-loop/pull/192

说明在windows下不支持 EventBaseConfig::FEATURE_FDS。

 

解决方法:

在 vendor/react/event-loop/src/ExtEventLoop.php 文件 48 行,加上判断。

if ('WIN' !== strtoupper(substr(PHP_OS, 0, 3))) {
    $config->requireFeatures(EventBaseConfig::FEATURE_FDS);
}

  

posted on 2019-07-20 17:18  怀素真  阅读(622)  评论(0编辑  收藏  举报