The last Micro Web Server for IoTs (MicroPython) or large servers (CPython), that supports WebSockets, routes, template
MicroWebSrv2
ESP32
⭐⭐⭐☆☆ (3/5)
已发布
项目简介
The last Micro Web Server for IoTs (MicroPython) or large servers (CPython), that supports WebSockets, routes, template
MicroWebSrv2 是一款专为 MicroPython 和 CPython 环境打造的高性能嵌入式 Web 服务器,由 JC`zic 开发,是经典 MicroWebSrv 的全面升级换代产品。它完全采用异步架构,从底层 I/O 到上层处理均实现端到端非阻塞,能够同时处理数千个并发请求,内存管理极为高效,运行速度非常快。项目主要面向物联网和嵌入式场景,常见于 Pycom WiPy、ESP32、STM32 Pyboard 等微控制器平台,也可在标准 Python 环境中运行。
标签
项目特点
**双平台兼容**:同时支持 MicroPython(IoT 设备)和 CPython(标准 Python),一套代码跨平台运行。
**异步 I/O 架构**:基于 asyncio 实现非阻塞 I/O,高并发下依然保持低延迟和低内存占用。
**内置 WebSocket 支持**:原生支持 WebSocket 协议,适合实时通信场景,如远程控制、数据推送。
**灵活的路由系统**:支持动态路由、参数捕获、HTTP 方法过滤,方便构建 RESTful API。
**模板引擎集成**:自带轻量级模板引擎,支持变量替换、循环、条件判断,无需额外依赖。
**安全与扩展性**:支持 HTTPS/SSL、CORS 跨域、自定义中间件,可轻松集成到现有项目中。
技术规格
| 支持平台 | |
|---|---|
| 协议支持 | |
| 异步模型 | |
| 最大并发连接 | |
| 内存占用 | |
| 路由功能 | |
| 模板引擎 | |
| SSL/TLS | |
| CORS | |
| 文件大小 | |
| 许可证 |
项目资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| MicroWebSrv2.py | 1 | — | 主服务器模块 |
| MicroWebSrv2_WebSocket.py | 1 | — | WebSocket 支持模块 |
| MicroWebSrv2_Template.py | 1 | — | 模板引擎模块 |
| examples/ 目录 | 1 | — | 包含多个使用示例 |
| README.md | 1 | — | 项目说明与快速开始 |
| wiki 页面 | 1 | — | 在线文档(GitHub Wiki) |
| uasyncio (MicroPython) 或 asyncio (CPython) | 1 | — | 异步 I/O 库 |
| ssl 模块 | 1 | — | 用于 HTTPS 支持 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| Python 3.x | 运行 CPython 版本 | ▢ 推荐 |
| MicroPython 固件 | 运行 MicroPython 版本 | ▢ 推荐 |
| 文本编辑器 / IDE | 编写和修改代码 | ✅ 是 |
| Web 浏览器 | 测试 Web 页面和 WebSocket | ▢ 推荐 |
| 串口工具(如 PuTTY) | 调试 IoT 设备 | ▢ 推荐 |
| Git | 克隆仓库和版本管理 | ▢ 推荐 |
能力画像
**记忆与知识检索**:3/5 — 需要查阅文档了解 API 和配置选项,但核心概念简单,上手快。
**动手与操作**:4/5 — 需要实际部署到设备或服务器,配置网络、测试接口,动手环节较多。
**编程与算法**:3/5 — 主要涉及 Python 编程,路由和模板逻辑简单,无需复杂算法。
**设计与建模**:2/5 — 项目本身是现成框架,设计工作主要集中在路由规划和页面模板上。
**实验与调试**:4/5 — 调试 Web 服务需要浏览器开发者工具、日志输出、串口监控等多种手段。
**协作与分享**:3/5 — 可通过 GitHub 提交 Issue 或 PR,但社区规模中等,协作机会有限。
**学习与研究**:4/5 — 适合学习异步编程、Web 协议、IoT 网络通信等知识,文档和示例丰富。
**系统集成**:4/5 — 可轻松与传感器、数据库、其他 Web 服务集成,扩展性强。
项目图库
所需技能
Python 基础编程
了解 HTTP/HTTPS 协议
熟悉 WebSocket 基本概念
能够使用命令行和文件传输工具
对 IoT 设备(如 ESP32)有基本认识(可选)
了解异步编程概念(可选)
适用场景
在 ESP32 上搭建智能家居控制 Web 界面
为 IoT 设备提供 RESTful API 接口
实现实时数据监控面板(通过 WebSocket 推送)
开发轻量级嵌入式 Web 应用
教学演示异步 Web 服务器原理
快速原型验证 Web 服务功能