首页  >  文章  >  后端开发  >  使用swoole作为基于ESP6的脚本可编程控制器的云端物联网网关框架

使用swoole作为基于ESP6的脚本可编程控制器的云端物联网网关框架

Patricia Arquette
Patricia Arquette原创
2024-10-19 06:10:31312浏览

脚本可编程控制器的本地功能已经基本完成,开始实现远程相关功能。

远程系统整体架构如下:
使用ESP8266的SDK实现tcp服务器和tcp客户端。
在tcp服务器的基础上编写http协议解析代码,设计简单的http服务器,处理与浏览器的数据交互,包括内置网页的下载,并使用ajax技术获取状态并保存数据。

使用html、js、css设计网页并下载存储到ESP8266模块的flash中,结合后端c语言的数据处理,实现基于网页的脚本编程、状态查看、参数设置等功能;

云服务器端,购买了一台linux云服务器主机,选择swoole作为TCP/IP通信网关;

Swoole 是一个适用于生产环境的 PHP 异步网络通信引擎,使 PHP 开发者能够编写高性能异步并发 TCP、UDP、Unix Socket、HTTP、WebSocket 服务。

在Swoole框架中实现tcp服务器和websocket服务器,其中tcp服务器用于连接控制器和云端,控制器的tcp客户端与云服务器的tcp服务器建立TCP长连接,以便从互联网获取数据可通过TCP连接远程发送给控制器,实现对控制器的远程控制;

远程网页使用websocket客户端与Swoole的websocket服务器建立长连接,实现云服务器与网页之间的远程穿透,从而可以将控制器的状态实时推送到网页显示时间;

websocket 服务器和 tcp 服务器之间的数据通过内存共享,PC 工具、网页和控制器都有唯一的编号,PC 主机、控制器和网页之间的数据消息以这个编号为来源和目的地址,tcp服务器和websocket服务器收到数据报文后根据目的地址进行转发,实现PC上的数据传输。 tcp服务器和websocket服务器收到数据报文后,根据目的地址进行转发,从而实现PC工具、网页和控制器之间的数据互联。

使用redis作为内存数据库,可以将控制器的状态数据临时存储在数据库中,实现电话异常报警等功能,而使用mysql作为永久数据库,存储一些配置数据。

Use swoole as the IOT gateway framework in cloud for script programmable controller based on ESP6

Use swoole as the IOT gateway framework in cloud for script programmable controller based on ESP6

以上是使用swoole作为基于ESP6的脚本可编程控制器的云端物联网网关框架的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn