在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 相关文章推荐
java EJB 加密与解密原理的一个例子
Jan 11 PHP
IStream与TStream之间的相互转换
Aug 01 PHP
php 禁止页面缓存输出
Jan 07 PHP
php实现数组筛选奇数和偶数示例
Apr 11 PHP
php检测url是否存在的方法
Apr 14 PHP
Yii2前后台分离及migrate使用(七)
May 04 PHP
Joomla简单判断用户是否登录的方法
May 04 PHP
joomla实现注册用户添加新字段的方法
May 05 PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
Oct 29 PHP
Laravel中错误与异常处理的用法示例
Sep 16 PHP
php多进程应用场景实例详解
Jul 22 PHP
PHPUnit + Laravel单元测试常用技能
Nov 06 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数组函数序列之sort() 对数组的元素值进行升序排序
2011/11/02 PHP
php接口和抽象类使用示例详解
2014/03/02 PHP
php中magic_quotes_gpc对unserialize的影响分析
2014/12/16 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
php实现的二叉树遍历算法示例
2017/06/15 PHP
PHP检测接口Traversable用法详解
2017/12/29 PHP
laravel7学习之无限级分类的最新实现方法
2020/09/30 PHP
javascript vvorld 在线加密破解方法
2008/11/13 Javascript
javascript下数值型比较难点说明
2010/06/07 Javascript
js跨域问题之跨域iframe自适应大小实现代码
2010/07/17 Javascript
javasctipt如何显示几分钟前、几天前等
2014/04/30 Javascript
jquery 新建的元素事件绑定问题解决方案
2014/06/12 Javascript
jquery+CSS3模拟Path2.0动画菜单效果代码
2015/08/31 Javascript
限制复选框最多选择项的实现代码
2016/05/30 Javascript
js select实现省市区联动选择
2020/04/17 Javascript
基于jQuery实现的查看全文功能【实用】
2016/12/11 Javascript
老生常谈jacascript DOM节点获取
2017/04/17 Javascript
vue中appear的用法
2017/08/17 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
layui实现数据分页功能(ajax异步)
2019/07/27 Javascript
layui框架与SSM前后台交互的方法
2019/09/12 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
小米5s微信跳一跳小程序python源码
2018/01/08 Python
如何使用Python发送HTML格式的邮件
2020/02/11 Python
Python爬虫与反爬虫大战
2020/07/30 Python
西班牙伏林航空公司:Vueling
2016/08/05 全球购物
澳洲的UGG雪地靴超级市场:Uggs.com.au
2020/04/06 全球购物
手机促销活动方案
2014/02/05 职场文书
运动会稿件300字
2014/02/14 职场文书
职务任命书范本
2014/06/05 职场文书
教师工作自我鉴定范文
2014/09/14 职场文书
公司离职证明标准范本
2014/10/05 职场文书
求职简历自我评价怎么写
2015/03/10 职场文书
2016十一国庆节感言
2015/12/09 职场文书
调研报告的主要写法
2019/04/18 职场文书
Laravel中获取IP的真实地理位置
2021/04/01 PHP