《Thinkphp5使用Socket服务》 入门篇
今天来说一下thinkphp5.0下使用wokerman的socket服务。
安装:
composer的安装方法,Windows下直接下个composer的应用程序,双击安装,环境变量同时给配置好了,Linux端命令安装,如我使用的Ubuntu,键入 sudo apt-get install composer -y 。
切换镜像:
composer切换到国内镜像,安装扩展可以提升一些速度。执行命令 composer config -g repo.packagist composer https://packagist.phpcomposer.com
更新:
进入到thinkphp项目的根目录下,执行 composer update 命令
下载:
接下来安装workerman ,执行 composer require topthink/think-worker 。
报错,根据报错信息,可以看出,framework版本不符合要求,导致安装失败。
如图可以看到,think-worker默认安装 2.0版本,而它需要5.1版本的framework,thinkphp5.0版本不被支持。
dev-master 版本,对framework没有要求,所以执行 composer require topthink/think-worker dev-master 安装即可。
如果要在win下做服务,继续执行 composer require workerman/workerman-for-win
绑定:
在根目录创建Worker.php作为启动服务文件,内容如下。
再创建push模块Worker控制器作为服务处理类
开启服务:
返回到项目根目录,执行命令 php Worker.php start -d 开启服务
注:这一步可能会报错
打开服务处理类文件,把ip地址换成0.0.0.0,然后重新执行php命令
测试:
打开Chrome 浏览器,在console里键入
大功告成。
本文只是初步连接websocket,至于投入项目使用,之后在写。
如果有帮到你,非常荣幸,请帮我点赞,谢谢。
《Thinkphp5使用Socket服务》 入门篇的更多相关文章
- socket.io 入门篇(一)
本文原文地址:https://www.limitcode.com/detail/591b114bb1d4fe074099d9c9.html 前言 本篇介绍使用node.js模块组件socket.io实 ...
- socket.io 入门篇(三)
本文原文地址:https://www.limitcode.com/detail/5926e3a056fba70278bf2044.html 前言 上篇我们介绍了 socket.io 中room的概念和 ...
- socket.io 入门篇(二)
本文原文地址:https://www.limitcode.com/detail/5922f1ccb1d4fe074099d9cd.html 前言 上篇我们介绍了 socket.io 基本使用方法,本篇 ...
- dubbo注册服务和消费服务---入门篇
本文介绍如何用dubbo+zk来实现一个注册服务 + 消费服务的入门小demo 需要环境:zk服务器 两个maven项目,一个负责提供服务,一个负责消费服务. dubbo-service 服务端 po ...
- 服务端技术进阶(八)GitHub入门篇
服务端技术进阶(八)GitHub入门篇 前言 在投递简历的过程中,发现有的公司会要求填写自己的GitHub地址,而自己却还没有GitHub帐号,准确点说是自己还不太会使用GitHub.(貌似开源社区中 ...
- Spring boot学习1 构建微服务:Spring boot 入门篇
Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...
- Httpd服务入门知识-http协议版本,工作机制及http服务器应用扫盲篇
Httpd服务入门知识-http协议版本,工作机制及http服务器应用扫盲篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Internet与中国 Internet最早来源于美 ...
- netty深入学习之一: 入门篇
netty深入学习之一: 入门篇 本文代码下载: http://download.csdn.net/detail/cheungmine/8497549 1)Netty是什么 Netty是Java NI ...
- 基于APNs最新HTTP/2接口实现iOS的高性能消息推送(服务端篇)
1.前言 本文要分享的消息推送指的是当iOS端APP被关闭或者处于后台时,还能收到消息/信息/指令的能力. 这种在APP处于后台或关闭情况下的消息推送能力,通常在以下场景下非常有用: 1)IM即时通讯 ...
随机推荐
- (转)GPU图形绘制管线
摘抄“GPU Programming And Cg Language Primer 1rd Edition” 中文名“GPU编程与CG语言之阳春白雪下里巴人”第二章. 图形绘制管线描述GPU渲染流程, ...
- WPF获取当前用户控件的父级窗体
方式一.通过当前控件名获取父级窗体 Window targetWindow = Window.GetWindow(button); 方式二.通过当前控件获取父级窗体 Window parentWind ...
- spark run using IDE / Maven
来自:http://stackoverflow.com/questions/26892389/org-apache-spark-sparkexception-job-aborted-due-to-st ...
- VTK计算网格模型上的最短路径
Dijkstra algorithm to compute the graph geodesic.Takes as input a polygonal mesh and performs a sing ...
- fiddler展示serverIP方法
转载自:http://www.xuanfengge.com/fiddler-displays-the-set-ip-method.html 前言 由于web前端在多个环境中开发,需要经常更换host, ...
- donet core 2.1 DateTime ToString() 方法 在不同平台返回的时间格式不一样?
跟操作系统的 设置的时间格式和系统区域设置有关.为了保持一致性.参数自己写好格式.
- 【Java】java数据库连接中C3P、DBCP、Druid连接池的使用
使用JDBC的步骤:1.加载数据库驱动2.通过DriverManager获得数据库连接3.通过Connection获得Statement对象4.使用Statement执行SQL语句.5.操作结果集合6 ...
- system函数遇到的问题
这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以 ...
- sql随机查询数据语句(NewID(),Rnd,Rand(),random())
SQL Server: 代码如下 复制代码 Select TOP N * From TABLE Order By NewID() NewID()函数将创建一个 uniqueidentifier 类型的 ...
- linux每日命令(9):cp命令
一.命令格式: cp [参数] source dest 或 cp [参数] source... directory 二.命令功能: 将源文件复制至目标文件,或将多个源文件复制至目标目录. 三. 命令参 ...