返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP搭建Workerman + MQTT 搭建物联网传输环境
  • 194
分享到

PHP搭建Workerman + MQTT 搭建物联网传输环境

php物联网服务器网络协议linux 2023-10-04 06:10:41 194人浏览 安东尼
摘要

PHP搭建Workerman + MQTT 搭建物联网传输环境 最近一个项目需要用到MQtT作为物联网传输协议, 为防止以后再用到的时候方便配置,特此记录, 有不对的地方请指正并一起学习 M

PHP搭建Workerman + MQTT 搭建物联网传输环境

最近一个项目需要用到MQtT作为物联网传输协议, 为防止以后再用到的时候方便配置,特此记录, 有不对的地方请指正并一起学习

MQTT是一个客户端服务端架构的发布/订阅模式的消息传输协议,已经成为物联网的重要组成部分。它的设计思想是轻巧、开放、简单、规范,易于实现。这些特点使得它对很多场景来说都是很好的选择,特别是对于受限的环境如机器与机器的通信(M2M)以及物联网环境(ioT)。

安装基础环境

安装基础环境已经有前辈很完整的介绍, 这里不再过多赘述

1. Workerman

Workerman是一款纯php开发开源高性能的PHP 应用容器

Workerman不是重复造轮子,它不是一个mvc框架,而是一个更底层更通用的服务框架,你可以用它开发tcp代理、梯子代理、做游戏服务器、邮件服务器、ftp服务器、甚至开发一个php版本的Redis、php版本的数据库、php版本的Nginx、php版本的php-fpm等等。Workerman可以说是PHP领域的一次创新,让开发者彻底摆脱了PHP只能做WEB的束缚。

实际上Workerman类似一个PHP版本的nginx,核心也是多进程+Epoll+非阻塞IO。Workerman每个进程能维持上万并发连接。由于本身常驻内存,不依赖Apache、nginx、php-fpm这些容器,拥有超高的性能。同时支持TCP、UDP、UNIXSocket,支持长连接,支持websocketHttp、WSS、https等通讯协议以及各种自定义协议。拥有定时器、异步socket客户端、异步Redis、异步Http、异步消息队列等众多高性能组件。

安装Worderman请点击此链接到官网

2. 安装MQTT服务器

centos 7 安装MQTT服务器mosquitto
设置链接账号密码

  • 这里注意下mosquitto的默认端口是1883, 出于安全考虑请将其改为其他端口, 更改端口配置文件再/etc/mosquitto/mosquitto.conf文件内, 将port前面的#注释掉, 并将1883改为其他内容
  • 特定方式运行mosquitto -c /etc/mosquitto/mosquitto.conf -d

3. 使用MQTTBox测试服务器是否搭建成功

  • 点击mqttbox的Create Mqtt Client进入链接编辑界面
  • 在界面中输入你的MQTT连接的参数
  • 在这里插入图片描述
  • 点击保存之后界面上出现Connected即表示连接成功
  • 订阅topic后向topic推送测试数据, 接收成功表示搭建完成, 注意发布与订阅的topic要保持一致

使用Workman接收和发布消息,

  1. workerman\mqtt 是一个基于workerman的异步mqtt 客户端库,可用于接收或者发送mqtt协议的消息。支持QoS 0、QoS 1、QoS 2。支持MQTT 3.1和3.1.1版本。
使用composer进行安装
composer config -g repo.packaGISt composer https://mirrors.aliyun.com/composer/composer require workerman/mqtt
示例
  • subscribe.php(消费者)
use Workerman\Worker;require_once __DIR__ . '/vendor/autoload.php';$worker = new Worker();$worker->onWorkerStart = function(){    $mqtt = new Workerman\Mqtt\Client('mqtt://test.mosquitto.org:1883');    $mqtt->onConnect = function($mqtt) {        $mqtt->subscribe('test');    };    $mqtt->onMessage = function($topic, $content){        var_dump($topic, $content);    };    $mqtt->connect();};Worker::runAll();

命令行运行 php subscribe.php start 启动

  • publish.php(生产者)
use Workerman\Worker;require_once __DIR__ . '/vendor/autoload.php';$worker = new Worker();$worker->onWorkerStart = function(){    $mqtt = new Workerman\Mqtt\Client('mqtt://test.mosquitto.org:1883');    $mqtt->onConnect = function($mqtt) {       $mqtt->publish('test', 'hello workerman mqtt');    };    $mqtt->connect();};Worker::runAll();

命令行运行 php publish.php start 启动

其他配置参数(账号\密码\client_id等)请前往Workerman官网查看

来源地址:https://blog.csdn.net/Simplegif/article/details/124568405

--结束END--

本文标题: PHP搭建Workerman + MQTT 搭建物联网传输环境

本文链接: https://lsjlt.com/news/423288.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • PHP搭建Workerman + MQTT 搭建物联网传输环境
    PHP搭建Workerman + MQTT 搭建物联网传输环境 最近一个项目需要用到MQTT作为物联网传输协议, 为防止以后再用到的时候方便配置,特此记录, 有不对的地方请指正并一起学习 M...
    99+
    2023-10-04
    php 物联网 服务器 网络协议 linux
  • Qt MQTT开发环境如何搭建
    本篇内容主要讲解“Qt MQTT开发环境如何搭建”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Qt MQTT开发环境如何搭建”吧!1.概述由于MQTT的库没有加入到Qt的标准...
    99+
    2023-07-02
  • docker搭建php环境
    PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法学习了C语言,吸纳Java和Perl多个语言的特色发展出自己的特色语法,并根...
    99+
    2023-08-31
    php 开发语言 服务器
  • CentOS7 搭建php环境
    0x01 安装apache 1、安装apache yum install -y httpd 2、修改配置文件 配置ServerName,进入httpd.conf文件: vim /etc/httpd/conf/http...
    99+
    2023-09-01
    apache php centos Powered by 金山文档
  • vs2008搭建php环境
    在开发网站或者应用程序的时候,php是一种非常受欢迎的编程语言之一。如果你是使用Microsoft Visual Studio 2008进行开发,那么你需要搭建php环境才能开始你的开发工作。在本篇文章中,我们将会向你介绍如何在vs2008...
    99+
    2023-05-24
  • Lamp环境中如何搭建Mysql与PHP环境的搭建
    今天就跟大家聊聊有关  Lamp环境中如何搭建Mysql与PHP环境的搭建,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 Lam...
    99+
    2024-04-02
  • win10怎么搭建本地php环境搭建
    在WEB开发中,PHP也许是最常用的服务器端脚本语言之一。为了更加方便的开发与测试,希望在本地电脑上搭建PHP环境,那么如何实现呢?下面是具体的步骤说明。步骤一:安装Web服务器搭建PHP环境的关键是安装Web服务器,Windows系统下可...
    99+
    2023-05-14
  • php建站环境如何搭建
    要搭建PHP建站环境,需要以下步骤:1. 安装Web服务器:常见的选择有Apache、Nginx等。可以通过包管理器或者官方网站下载...
    99+
    2023-08-23
    php
  • sybase+php+apache环境搭建
    建立本地源zypper ar file:///mnt/suse11sp2 local-sles//添加源zypper lr //列出源zypper ...
    99+
    2024-04-02
  • docker搭建nginx+php环境
    一、docker拉取nginx和php镜像 命令如下: docker pull nginx:latestdocker pull php:7.4-fpm 创建本地挂载路径: mkdir -p /dock...
    99+
    2023-09-02
    nginx php docker
  • php环境搭建配置
    PHP是一种非常流行的服务器端开发语言,它被广泛用于Web开发、软件开发、以及各种与服务器端有关的操作。为了使用PHP进行开发,用户需要首先搭建并配置好PHP环境。本文将详细介绍PHP环境的搭建和配置过程。一、安装PHP环境1.安装PHP解...
    99+
    2023-05-24
  • PHP环境如何搭建
    要搭建PHP环境,需要以下步骤:1. 安装PHP解释器:你可以从PHP官方网站(https://www.php.net/downlo...
    99+
    2023-08-23
    php
  • Python 开发环境搭建(01):vmware workstation 网络搭建
    为了在linux环境下开发环境,可以连到其它服务器进行巡检,同时也可以本地shell连接,敲击命令,特别突击研究了一下虚拟机的网络配置,具体步骤如下一、虚拟机设置为了使本地shell可以连接虚机,配置了NAT,具体步骤如下:打开虚拟网络编辑...
    99+
    2023-06-02
  • tomcat php环境如何搭建
    本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。tomcat php环境如何搭建?php+tomcat 配置运行环境完成时的截图!虽然可以在tomcat运行php项目,但是不代表不用配置php环境,所以第一步要做的是...
    99+
    2019-03-22
    php tomcat
  • winxp怎么搭建php环境
    本文操作环境:Windows xp系统,php 5.4.15版,Dell G3电脑。winxp怎么搭建php环境?windowsXP下搭建Apache+MySql+PHP环境一、安装Apache下载httpd-2.4.4-win32-ssl...
    99+
    2016-10-17
    winxp php
  • php怎么搭建websocket环境
    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。php怎么搭建websocket环境?PHP创建websocket服务端创建这个服务端需要先开启sockets扩展,没有开启的话,无论如何都会报错只需要在php.in...
    99+
    2024-04-02
  • selenium php环境怎么搭建
    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。selenium php环境怎么搭建?windows环境下的PHP+selenium环境搭建最近想要入门自动化测试,之前也写过使用codeception进行单元测试和...
    99+
    2024-04-02
  • php环境搭建的方法
    这篇文章主要介绍了php环境搭建的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php的框架有哪些php的框架:1、Laravel,Laravel是一款免费并且开源的PH...
    99+
    2023-06-14
  • XMAPP在php中搭建环境
    这篇文章主要介绍XMAPP在php中搭建环境,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、使用XMAPP下载XMAPP后进行傻瓜式安装即可,然后启动 XMAPP control Pane,启动Apache和MyS...
    99+
    2023-06-14
  • tomcat php环境怎么搭建
    这篇文章主要介绍了tomcat php环境怎么搭建,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。tomcat php环境搭建的方法:1、把下载好的php复制到相应目录;2、解...
    99+
    2023-06-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作