在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编实现程动态图像的创建代码
Sep 28 PHP
PHP缩略图等比例无损压缩,可填充空白区域补充色
Jun 10 PHP
探讨php中遍历二维数组的几种方法详解
Jun 08 PHP
php读取纯真ip数据库使用示例
Jan 26 PHP
php实现递归的三种基本方式
Jul 04 PHP
PHP上传图片、删除图片简单实例
Nov 12 PHP
详解PHP发送邮件知识点
May 06 PHP
ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面图文详解
Apr 03 PHP
使用Laravel中的查询构造器实现增删改查功能
Sep 03 PHP
laravel按天、按小时,查询数据的实例
Oct 09 PHP
关于laravel 子查询 &amp; join的使用
Oct 16 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
Jan 23 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消息队列用法实例分析
2016/02/12 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
JavaScript判断两种格式的输入日期的正确性的代码
2007/03/25 Javascript
使用jQuery内容过滤选择器选择元素实例讲解
2013/04/18 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
javascript中数组的concat()方法使用介绍
2013/12/18 Javascript
jquery操作select大全
2014/04/25 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 简史
2015/01/09 Javascript
JavaScript学习笔记之Cookie对象
2015/01/22 Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
2016/09/30 Javascript
JS操作xml对象转换为Json对象示例
2017/03/25 Javascript
vue.js实现带日期星期的数字时钟功能示例
2018/08/28 Javascript
使用ng-packagr打包Angular的方法示例
2018/09/21 Javascript
微信小程序picker组件关于objectArray数据类型的绑定方法
2019/03/13 Javascript
如何获取vue单文件自身源码路径
2019/05/06 Javascript
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
适用于 Vue 的播放器组件Vue-Video-Player操作
2020/11/16 Javascript
Python使用MD5加密字符串示例
2014/08/22 Python
Python实时获取cmd的输出
2015/12/13 Python
Python实现代码统计工具(终极篇)
2016/07/04 Python
OpenCV模板匹配matchTemplate的实现
2019/10/18 Python
使用遗传算法求二元函数的最小值
2020/02/11 Python
Python 实现日志同时输出到屏幕和文件
2020/02/19 Python
浅析python标准库中的glob
2020/03/13 Python
Python txt文件常用读写操作代码实例
2020/08/03 Python
实现Python3数组旋转的3种算法实例
2020/09/16 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
开展党的群众路线教育实践活动方案
2014/02/05 职场文书
规范化管理年活动总结
2014/08/29 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书
学习三严三实心得体会
2014/10/13 职场文书
2015年党员个人剖析材料
2014/12/18 职场文书
教师节感想
2015/08/11 职场文书
MySQL 查询速度慢的原因
2021/05/25 MySQL
Canvas绘制像素风图片的示例代码
2021/09/25 HTML / CSS