基于 Swoole 让你的 Laravel 项目的 MySQL 协程化
首先,确认你是用的是laravel 5.6
然后,你需要依赖 kuaiapp/db 这个包,作用是实现 swoole\coroutine\mysql 的伪 PDO 接口
composer require kuaiapp/db:v0.1 -vvv
将 laravel/framework:"v5.6"
修改成laravelfy/framework:v5.6.x-dev
composer require laravelfy/framework:v5.6.x-dev -vvv
在你的laravel-swoole命令中启动,测试下带有数据库查询的接口。
如laravel-s
php laravels start
至此,你的 laravel 项目的 MYSQL 协程化改造成功。
没看懂
@rookie1 那时候 swoole 4.x 还没推出
enableCoroutine
特性,现在这文章已经过时了。你使用Runetime::enableCoroutine()
就可以更方便的达到效果了。协程化了,但是没有连接池的支持也是枉然,laravel、thinkphp5.1到现在还没有对于池的支持,开启协程化后用他们的db就会有并发访问链接的问题