在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下图片文字混合水印与缩略图实现代码
Dec 11 PHP
Mysql数据库操作类( 1127版,提供源码下载 )
Dec 02 PHP
PHP中删除变量时unset()和null的区别分析
Jan 27 PHP
php Ubb代码编辑器函数代码
Jul 05 PHP
PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
Apr 08 PHP
PHP简单实现HTTP和HTTPS跨域共享session解决办法
May 27 PHP
深入理解php printf() 输出格式化的字符串
May 23 PHP
thinkPHP实现的联动菜单功能详解
May 05 PHP
PHP多维数组排序array详解
Nov 21 PHP
ThinkPHP5.1框架页面跳转及修改跳转页面模版示例
May 06 PHP
浅谈php常用的7大框架的优缺点
Jul 20 PHP
JS中彻底删除JSON对象组成的数组中的元素
Sep 22 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
法国:浪漫之都的咖啡文化
2021/03/03 咖啡文化
php中serialize序列化与json性能测试的示例分析
2013/04/27 PHP
php对文件夹进行相关操作(遍历、计算大小)
2015/11/04 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
2018/04/21 PHP
php设计模式之职责链模式定义与用法经典示例
2019/09/19 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
2020/05/14 PHP
爆炸式的JS圆形浮动菜单特效代码
2010/03/03 Javascript
JavaScript EasyPager 分页函数
2011/05/25 Javascript
Node.js 的异步 IO 性能探讨
2014/10/08 Javascript
简介JavaScript中的setTime()方法的使用
2015/06/11 Javascript
JS仿京东移动端手指拨动切换轮播图效果
2020/04/10 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
JS二叉树的简单实现方法示例
2017/04/05 Javascript
json对象及数组键值的深度大小写转换问题详解
2018/03/30 Javascript
vue源码解析之事件机制原理
2018/04/21 Javascript
vue根据值给予不同class的实例
2018/09/29 Javascript
对Layer弹窗使用及返回数据接收的实例详解
2019/09/26 Javascript
vue项目中锚点定位替代方式
2019/11/13 Javascript
[41:56]Spirit vs Liquid Supermajor小组赛A组 BO3 第一场 6.2
2018/06/03 DOTA
Python中apply函数的用法实例教程
2014/07/31 Python
python实现多线程的两种方式
2016/05/22 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
Python 实现交换矩阵的行示例
2019/06/26 Python
详解Python self 参数
2019/08/30 Python
python hash每次调用结果不同的原因
2019/11/21 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
html5 canvas 画图教程案例分析
2012/11/23 HTML / CSS
美国顶尖折扣时尚购物网:Bluefly
2016/08/28 全球购物
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
教师求职推荐信范文
2013/11/20 职场文书
班级体育活动总结
2014/07/05 职场文书
研究生导师推荐信
2015/03/25 职场文书
民间借贷纠纷答辩状
2015/08/03 职场文书
九年级英语教学反思
2016/02/15 职场文书
MySQL REVOKE实现删除用户权限
2021/06/18 MySQL