在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版)
Oct 09 PHP
将RTF格式的文件转成HTML并在网页中显示的代码
Oct 09 PHP
PHP新手上路(十二)
Oct 09 PHP
在php中判断一个请求是ajax请求还是普通请求的方法
Jun 28 PHP
PHP的异常处理类Exception的使用及说明
Jun 13 PHP
php中的mongodb select常用操作代码示例
Sep 06 PHP
ThinkPHP中redirect用法分析
Dec 05 PHP
php批量添加数据与批量更新数据的实现方法
Dec 16 PHP
php简单实现多字节字符串翻转的方法
Mar 31 PHP
必须收藏的php实用代码片段
Feb 02 PHP
PHP设计模式之适配器模式定义与用法详解
Apr 03 PHP
PHP获取文件扩展名的常用方法小结【五种方式】
Apr 27 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
Linux环境下搭建php开发环境的操作步骤
2013/06/17 PHP
phpQuery占用内存过多的处理方法
2013/11/13 PHP
PHP5.3安装Zend Guard Loader图文教程
2014/09/29 PHP
PHP实现微信红包金额拆分试玩的算法示例
2018/04/07 PHP
PHP PDOStatement::rowCount讲解
2019/02/01 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
TypeScript 中接口详解
2015/06/19 Javascript
学习JavaScript设计模式之装饰者模式
2016/01/19 Javascript
非常漂亮的相册集 使用jquery制作相册集
2016/04/28 Javascript
React-router 4 按需加载的实现方式及原理详解
2017/05/25 Javascript
React中的render何时执行过程
2018/04/13 Javascript
vue服务端渲染缓存应用详解
2018/09/12 Javascript
如何使用puppet替换文件中的string
2018/12/06 Javascript
微信小程序实现语音识别转文字功能及遇到的坑
2019/08/02 Javascript
Vue项目中如何使用Axios封装http请求详解
2019/10/23 Javascript
es6函数中的作用域实例分析
2020/04/18 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
Python提示[Errno 32]Broken pipe导致线程crash错误解决方法
2014/11/19 Python
python中xrange用法分析
2015/04/15 Python
独特的python循环语句
2016/11/20 Python
Django自定义分页与bootstrap分页结合
2021/02/22 Python
Python绘制的二项分布概率图示例
2018/08/22 Python
浅析Python函数式编程
2018/10/06 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
2019/01/08 Python
python之线程通过信号pyqtSignal刷新ui的方法
2019/01/11 Python
从训练好的tensorflow模型中打印训练变量实例
2020/01/20 Python
英国排名第一的LED灯泡网站:LED Bulbs
2019/09/03 全球购物
大学校园生活自我鉴定
2014/01/13 职场文书
亮剑精神演讲稿
2014/05/23 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
银行会计主管岗位职责
2014/10/01 职场文书
2014年销售员工作总结
2014/12/01 职场文书
协议书范文
2015/01/27 职场文书
钱塘江大潮导游词
2015/02/03 职场文书
2015年大学社团工作总结
2015/04/09 职场文书
MySQL sql_mode修改不生效的原因及解决
2021/05/07 MySQL