在Laravel5.6中使用Swoole的协程数据库查询


Posted in PHP onJune 15, 2018

什么是Swoole

直接套用Swoole官网的介绍:PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole内置了Http/WebSocket服务器端/客户端、Http2.0服务器端。

Swoole官网的文档不够丰富啊,这比较头疼,但大部分的问题都解释了。如果你对Swoole很感兴趣,那么看看这个Swoole入门教程。Swoole提供了多线程、长连接等很多牛逼的功能,把php上升到了一个新的台阶,具体的你可以看看入门教程,本文只限于讨论Laravel和Swoole的结合。

Swoole为了提供服务,必须以CLI模式运行,什么是CLI模式呢?如果你Swoole业务代码是写在一个叫server.php的文件中,那么在命令行下输入php server.php开启。这是比较头疼的事情,因为Laravel框架可不是这样的运转的,那如何能与Laravel结合呢?没错,自定义一条Artisan Command,就这么简单。

强烈推荐在你的laravel项目中,使用 laravel-s 这个包.

composer require "hhxsv5/laravel-s:~1.0" -vvv

然后,依赖 kuaiapp/db 这个包,作用是实现 Swoole\Coroutine\MySQL 的伪 PDO 接口

composer require "kuaiapp/db" -vvv

vendor/laravel/framework 打patch

cd .//vendor/laravel/framework
wget https://gist.githubusercontent.com/xiaohuilam/81ae50c1bc06180bd8e6fcbdaadba86a/raw/529cb96ca9abeed7a35076725b3b5cd8a1e04ff7/git.patch
git am < git.patch

启动laravel-s

php artisan laravels start

现在你就可以测试你的数据库查询了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用 php 编写的日历
Oct 09 PHP
php 计划任务 检测用户连接状态
Mar 29 PHP
分享一个超好用的php header下载函数
Jan 31 PHP
CI框架自动加载session出现报错的解决办法
Jun 17 PHP
PHP编译安装中遇到的两个错误和解决方法
Aug 20 PHP
php广告加载类用法实例
Sep 23 PHP
Yii分页用法实例详解
Dec 04 PHP
php实现对两个数组进行减法操作的方法
Apr 17 PHP
PHP获取数组的键与值方法小结
Jun 13 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 PHP
PHP实现微信退款功能
Oct 02 PHP
laravel 模型查询按照whereIn排序的示例
Oct 16 PHP
ThinkPHP框架实现的邮箱激活功能示例
Jun 15 #PHP
基于swoole实现多人聊天室
Jun 14 #PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 #PHP
php实现微信公众平台发红包功能
Jun 14 #PHP
ThinkPHP3.2框架自定义配置和加载用法示例
Jun 14 #PHP
thinkPHP框架实现多表查询的方法
Jun 14 #PHP
php微信开发之关注事件
Jun 14 #PHP
You might like
php中定义网站根目录的常用方法
2010/08/08 PHP
简单概括PHP的字符串中单引号与双引号的区别
2016/05/07 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
2017/07/13 PHP
PDO::errorInfo讲解
2019/01/28 PHP
Yii2框架实现利用mpdf创建pdf文件功能示例
2019/02/08 PHP
javascript比较文档位置
2008/04/08 Javascript
Prototype PeriodicalExecuter对象 学习
2009/07/19 Javascript
jQuery UI的Dialog无法提交问题的解决方法
2011/01/11 Javascript
JS常用正则表达式总结
2013/11/12 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
2014/06/05 Javascript
JS替换字符串中空格方法
2015/04/17 Javascript
BootStrap table使用方法分析
2016/11/08 Javascript
jquery validation验证表单插件
2017/01/07 Javascript
微信小程序获取循环元素id以及wx.login登录操作
2017/08/17 Javascript
浅谈在koa2中实现页面渲染的全局数据
2017/10/09 Javascript
element-ui 上传图片后清空图片显示的实例
2018/09/04 Javascript
JS实现的进制转换,浮点数相加,数字判断操作示例
2019/11/09 Javascript
jQuery擦除插件eraser使用方法详解
2020/01/11 jQuery
[07:54]DOTA2 MV《我的动力鞋》 ImbaTV 出品
2014/11/21 DOTA
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
Python for Informatics 第11章之正则表达式(二)
2016/04/21 Python
python snownlp情感分析简易demo(分享)
2017/06/04 Python
利用python打开摄像头及颜色检测方法
2018/08/03 Python
python 多线程将大文件分开下载后在合并的实例
2018/11/09 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
python开启debug模式的方法
2019/06/27 Python
Python气泡提示与标签的实现
2020/04/01 Python
应届大学毕业生找工作的求职信范文
2013/11/29 职场文书
临床医师个人自我评价
2014/04/06 职场文书
C++程序员求职信
2014/05/07 职场文书
委托书英文
2015/01/28 职场文书
2015年公路养护工作总结
2015/05/13 职场文书
企业法人代表证明书
2015/06/18 职场文书
安全生产感想
2015/08/07 职场文书
python如何在word中存储本地图片
2021/04/07 Python
CSS实现九宫格布局(自适应)的示例代码
2022/02/12 HTML / CSS