在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脚本的10个技巧(1)
Oct 09 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
Nov 01 PHP
在smarty中调用php内置函数的方法
Feb 07 PHP
ThinkPHP中关联查询实例
Dec 02 PHP
PHP中使用array函数新建一个数组
Nov 19 PHP
PHP开发中常用的十个代码样例
Feb 02 PHP
zend framework重定向方法小结
May 28 PHP
Laravel的throttle中间件失效问题解决方法
Oct 09 PHP
详解PHP如何更好的利用PHPstorm的自动提示
Aug 18 PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
Jul 21 PHP
PHP使用标准库spl实现的观察者模式示例
Aug 04 PHP
PHP实现递归的三种方法
Jul 04 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实例分享之通过递归实现删除目录下的所有文件详解
2014/05/15 PHP
php中fgetcsv()函数用法实例
2014/11/28 PHP
php自动给网址加上链接的方法
2015/06/02 PHP
基于jquery的让页面控件不可用的实现代码
2010/04/27 Javascript
jQuery图片预加载 等比缩放实现代码
2011/10/04 Javascript
鼠标焦点离开文本框时验证的js代码
2013/07/19 Javascript
Jquery操作js数组及对象示例代码
2014/05/11 Javascript
js获取元素相对窗口位置的实现代码
2014/09/28 Javascript
jQuery的基本概念与高级编程
2015/05/14 Javascript
JavaScript生成福利彩票双色球号码
2015/05/15 Javascript
jQuery简单获取键盘事件的方法
2016/01/22 Javascript
js如何准确获取当前页面url网址信息
2020/09/13 Javascript
深入理解jquery中的事件与动画
2016/05/24 Javascript
Bootstrap前端开发案例二
2016/06/17 Javascript
修改jquery中dialog的title属性方法(推荐)
2016/08/26 Javascript
Jquery实现上下移动和排序代码
2016/10/17 Javascript
原生js实现网易轮播图效果
2020/04/10 Javascript
jquery删除数组中重复元素
2016/12/05 Javascript
ajax异步请求详解
2017/01/06 Javascript
AngularJS ui-router刷新子页面路由的方法
2018/07/23 Javascript
Node.js之删除文件夹(含递归删除)代码实例
2019/09/09 Javascript
Javascript中window.name属性详解
2020/11/19 Javascript
Python的组合模式与责任链模式编程示例
2016/02/02 Python
python实现kMeans算法
2017/12/21 Python
Pandas直接读取sql脚本的方法
2021/01/21 Python
德国婴儿推车和儿童安全座椅商店:BABYSHOP
2016/09/01 全球购物
英国安全产品购物网站:The Safe Shop
2017/03/20 全球购物
Tostadora意大利:定制T恤
2019/04/08 全球购物
定义一结构体变量,用其表示点坐标,并输入两点坐标,求两点之间的距离
2015/08/17 面试题
Shell编程面试题
2012/05/30 面试题
假日旅行社实习自我鉴定
2013/09/24 职场文书
五星级酒店餐饮部总监的标准岗位职责
2014/02/17 职场文书
经济类毕业生求职信
2014/06/26 职场文书
话题作文之呼唤
2019/12/18 职场文书
如何使用CocosCreator对象池
2021/04/14 Javascript
MySQL 主从复制数据不一致的解决方法
2022/03/18 MySQL