在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生成静态页面分析 模板+缓存+写文件
Aug 17 PHP
php下连接ftp实现文件的上传、下载、删除文件实例代码
Jun 03 PHP
php.ini 配置文件的深入解析
Jun 17 PHP
php数组中包含中文的排序方法
Jun 03 PHP
ThinkPHP3.1新特性之查询条件预处理简介
Jun 19 PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
Sep 06 PHP
php需登录的文件上传管理系统
Mar 21 PHP
php实现微信发红包
Dec 05 PHP
一段实用的php验证码函数
May 19 PHP
php json中文编码为null的解决办法
Dec 14 PHP
PHP那些琐碎的知识点(整理)
May 20 PHP
PHP智能识别收货地址信息实例
Jan 05 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下判断数组中是否存在相同的值array_unique
2008/03/25 PHP
PHP中MVC模式的模板引擎开发经验分享
2011/03/23 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
2019/03/21 PHP
PHP CURL使用详解
2019/03/21 PHP
ext checkboxgroup 回填数据解决
2009/08/21 Javascript
zTree插件之多选下拉菜单实例代码
2013/11/06 Javascript
JS使用getComputedStyle()方法获取CSS属性值
2014/04/23 Javascript
AngularJS表单编辑提交功能实例
2015/02/13 Javascript
Javascript闭包(Closure)详解
2015/05/05 Javascript
Sea.JS知识总结
2016/05/05 Javascript
JavaScript性能优化总结之加载与执行
2016/08/11 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
JavaScript判断浏览器及其版本信息
2017/01/20 Javascript
浅谈 Vue v-model指令的实现原理
2017/06/08 Javascript
JS实现的简单表单验证功能完整实例
2017/10/14 Javascript
使用jQuery动态设置单选框的选中效果
2018/12/06 jQuery
微信小程序实现随机验证码功能
2018/12/20 Javascript
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
[06:13]DOTA2进化论(修改版)
2013/10/08 DOTA
[02:41]2015国际邀请赛中国区预选赛观战指南
2015/05/20 DOTA
[03:10]超级美酒第四天 fy拉比克秀 大合集
2018/06/05 DOTA
python list转矩阵的实例讲解
2018/08/04 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
2019/06/08 Python
python实现的发邮件功能示例
2019/09/11 Python
Python列表切片常用操作实例解析
2019/12/16 Python
Django项目创建及管理实现流程详解
2020/10/13 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
阿拉伯书店:Jamalon
2019/07/24 全球购物
标准离婚协议书(2014版)
2014/10/05 职场文书
12.4法制宣传日标语
2014/10/08 职场文书
助学感谢信范文
2015/01/21 职场文书
重阳节活动主持词
2015/07/04 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
如何用JavaScript检测当前浏览器是无头浏览器
2021/04/27 Javascript