在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
dedecms模版制作使用方法
Apr 03 PHP
php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
Nov 27 PHP
php中利用post传递字符串重定向的实现代码
Apr 21 PHP
php 获取页面中指定内容的实现类
Jan 23 PHP
php使用多个进程同时控制文件读写示例
Feb 28 PHP
phpmyadmin打开很慢的解决方法
Apr 21 PHP
php使用curl简单抓取远程url的方法
Mar 13 PHP
PHP中COOKIES使用示例
Jul 26 PHP
PHP编写RESTful接口的方法
Feb 21 PHP
PHP中TP5 上传文件的实例详解
Jul 31 PHP
php+js实现的无刷新下载文件功能示例
Aug 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 图片上传代码
2011/09/13 PHP
PHP操作文件的一些基本函数使用示例
2014/11/18 PHP
php中Redis的应用--消息传递
2017/03/28 PHP
PHP Primary script unknown 解决方法总结
2019/08/22 PHP
jQuery实战之品牌展示列表效果
2011/04/10 Javascript
FireFox下XML对象转化成字符串的解决方法
2011/12/09 Javascript
让图片旋转任意角度及JQuery插件使用介绍
2013/03/20 Javascript
jquery的live使用注意事项
2014/02/18 Javascript
js通过location.search来获取页面传来的参数
2014/09/11 Javascript
原生js制作简单的数字键盘
2015/04/24 Javascript
JS实现简洁、全兼容的拖动层实例
2015/05/13 Javascript
javascript显示上周、上个月日期的处理方法
2016/02/03 Javascript
Bootstrap下拉菜单样式
2017/02/07 Javascript
微信小程序movable view移动图片和双指缩放实例代码
2017/08/08 Javascript
vue中实现图片和文件上传的示例代码
2018/03/16 Javascript
vue项目开发中setTimeout等定时器的管理问题
2018/09/13 Javascript
vue filter 完美时间日期格式的代码
2019/08/14 Javascript
js实现左右轮播图
2020/01/09 Javascript
python在windows下实现ping操作并接收返回信息的方法
2015/03/20 Python
python连接mongodb密码认证实例
2018/10/16 Python
详解Python的三种可变参数
2019/05/08 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
python对指定字符串逆序的6种方法(小结)
2020/04/02 Python
安装pyinstaller遇到的各种问题(小结)
2020/11/20 Python
Web页面中八种创建多列等高(等高列布局)的实现技术
2012/12/24 HTML / CSS
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
环境工程毕业生自荐信
2013/11/17 职场文书
2014年党员公开承诺书范文
2014/03/28 职场文书
排查整治工作方案
2014/06/09 职场文书
简单的个人租房协议书范本
2014/11/26 职场文书
银行给客户的感谢信
2015/01/23 职场文书
2015年销售内勤工作总结
2015/04/27 职场文书
文艺节目主持词
2015/07/06 职场文书
校园之声广播稿
2015/08/18 职场文书
学校教代会开幕词
2016/03/04 职场文书
mysql全面解析json/数组
2022/07/07 MySQL