workman php教程_workerman搭建websocket入门教程,简单实用
在物联网控制远程硬件的过程中,实时通信是必不可少的。不用实时通信可不可以呢?当然是可以的,但在实际应用中的体验可能就十分的不好了。
试想一下,一个联网电灯,控制端命令发出去,电灯要2到3秒钟以后才能开关。这种体验实在太差劲了。
那么我们该如何实现实时通讯呢?
最常用的一种就是Websocket。后端能实现websocket的语方很多,例如Node.js,Go,Python,dotnet core,java。
websocket与http的区别
当然php也可以做到,只是要依赖这篇要展开说的Workerman。
workerman是一个高性能的PHP socket 服务器框架。
小智选择Workerman的理由不仅是因为它的性能不错,终其原因是:作为PHP开发者之一的我,workerman布署简单,学习成本低是最主要的原因。
说到workerman同学们可能会说swoole也很不错。没错swoole也是个好东西,小智会开专文来讲述它的。
好了,现在我们开始进入正题,如何使用workerman创建属于自己的websocket服务器。
1.下载workerman
workerman可以到基友站下载,也可以在其官方直接下载。
下载workerman
这里我们在官方网站直接下载,得到一个zip包。
2.部署workerman并编写test.php
解压刚刚下载的zip包到C盘根目录下。
进入workerman-master目录,然后新建一个test.php,内容如下:
<?phpuse Workerman\Worker;require_once __DIR__ . '/Autoloader.php';// 创建一个Worker监听2345端口,使用http协议通讯$http_worker = new Worker("websocket://0.0.0.0:2345");// 启动4个进程对外提供服务$http_worker->count = 4;// 接收到浏览器发送的数据时回复hello world给浏览器$http_worker->onMessage = function($connection, $data){var_dump($data);// 向浏览器发送hello world$connection->send('hello world');};Worker::runAll();
3.调试test.php
运行命令行工具并进入c:\workerman-master目录,输入命令php test.php start
运行结果
看到这样的画面,就证明websocket服务器已经成功建立。接下来我们来测试一下。
测试websocket服务器是否正常
从上图可以看出,我们的websocket服务器是正常的,能够收到消息,也能回复消息到客户端。
workman php教程_workerman搭建websocket入门教程,简单实用相关推荐
- linux宝塔搭建网站,宝塔Linux面板搭建网站入门教程五(宝塔Linux面板安装WordPress博客程序)...
本文于 2021-04-01 00:04 更新,本文內容具有時效性,如有失效,請在博客站內搜相關商家名稱,即可查看到關於此商家的最新優惠活動! 國外商家建議使用"谷歌瀏覽器"訪問, ...
- 51自学网AutoCAD2014室内设计 AutoCAD2009施工图教程 CAD布局及规范作图教程 室内手绘入门教程...
我要自学网平面设计 计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 我要自学网Excel函数应用教程 Excel VBA基础教程 ...
- 动漫人物透视教程,透视画法入门教程
动漫人物透视教程,透视画法入门教程!今天分享的是有关动漫人物透视教程的资源,包含动漫人物透视教程教程.动漫人物透视教程图片素材两个部分,学习动漫人物透视教程的时候,一定要多练,下面开始咱们的动漫人物透 ...
- html+css+小图标,HTML+CSS入门 一个简单实用的CSS loading图标
本篇教程介绍了HTML+CSS入门 一个简单实用的CSS loading图标,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门.< 在web开发中,为了提高用户体验,在加载数据的时 ...
- 什么是python基础教程-最好的Python入门教程是?
Python教程领到手,学习不用愁!领! 作为一门编程语言,Python是属于入门比较简单的.所以身边不少人都选择了自学Python,而且网上相关资料也有很多,知识兔分享大量的Python教学课程,基 ...
- python爬虫教程下载-Python爬虫入门教程!手把手教会你爬取网页数据
其实在当今社会,网络上充斥着大量有用的数据,我们只需要耐心的观察,再加上一些技术手段,就可以获取到大量的有价值数据.这里的"技术手段"就是网络爬虫.今天就给大家分享一篇爬虫基础知识 ...
- python语言入门教程-菜鸟学Python入门教程大盘点|7个多月的心血总结
原标题:菜鸟学Python入门教程大盘点|7个多月的心血总结 阅读本文大概需要5分钟 菜鸟学python已经写了70几篇,入门的教程已经快写完了,我把入门的文章整理了一下,下面是入门篇的一些总结,也是 ...
- c语言入门教程文库,C语言入门教程(全集)课件
C语言入门教程(全集)课件 01123364105 Y N p AB X=0? YN P1 A A P2 a a b b Y Y N N y n A B P A A B X=0? 3 a97 3 U ...
- php class类 教程,PHP类(Class)入门教程第2/2页
用正确的小汽车对象学习和熟悉类的概念 很多书讲到类总喜欢拿小汽车来做例子,但是有些例子实在是又臭又烂误人子弟,骗人钱财,毁人前程,弱智低级到瞎编一个什么 set_color()函数来教人.实在是白白糟 ...
最新文章
- 用Cordova打包Vue-vux项目
- Spring MVC常用注解说明
- 实现gps与服务器通信协议,一种自适应GPS通信协议分析算法的设计与实现
- mysql语句_Mysql语句
- sqli-labs第一关(MySql基础)
- python apply_async数据量大不执行_apply_async里面的函数不执行
- pmbook 知识领域 第六版_PMP项目管理10大知识领域脑图
- 【Linux】- 守护进程的启动方法
- 主机关机后第二天就无法开机_iphone没电自动关机后无法充电和开机的解决办法!(亲身经历)...
- Hive小文件问题:如何产生、造成影响、解放办法
- 属于attribute还是property。
- [Linux] 使用 SCP 指令,讓您傳送檔案至遠端、下載檔案
- 脏写 脏读 不可重复读 幻读 读偏差 写偏差 丢失更新 示例
- python 常用简单代码
- matlab有限元分析程序,matlab有限元分析与应用(书及源程序)
- oracle 设置 锁模式,oracle表锁的几种模式v$locked_object-locked_mode
- 新版标准日本语初级_第三十九课
- 矩形波 matlab,Matlab的方波函数
- 谷歌面试题:两个玻璃球摔碎的楼层高度
- 什么是互联网营销?看一篇这就够了
热门文章
- 关于前端开发 Framework Agnostic 和微前端的话题
- SAP Fiori Service Modeler
- SSR rendering exceeded timeout 3000, fallbacking to CSR for
- Chrome开发者工具使用console.trace的一个小技巧
- SAP Spartacus B2B页面的BodyContent position
- Angular Injection Token records map的填充原理
- 如何使用Gradle外部脚本进行项目构建
- 如何使用SAP Intelligent Robotic Process Automation自动操作Excel
- 3d button - where is OS type and version detected
- SE81 - Application hierarchy CSS component tree