返回首页
最新
DietPi 是一个基于 Debian 的轻量级 Linux 发行版,适用于单板计算机(SBC)和服务器系统,同时也提供安装桌面环境的选项。它以最小化的镜像形式发布,但允许通过一系列基于控制台的对话框和脚本安装完整且可直接使用的软件栈。
源代码托管在 GitHub 上: https://github.com/MichaIng/DietPi
官方网站地址为: https://dietpi.com/
维基百科链接: https://de.wikipedia.org/wiki/DietPi
该项目于 2025 年 11 月 15 日发布了 DietPi v9.19 版本。
此版本的亮点包括:
- Raspberry Pi 和 Allwinner H3/H5:针对这些单板计算机的修复
- BirdNET-Go:新软件标题(鸟类监测与识别)
- NAA Daemon、Moonlight(图形用户界面)、UrBackup、Medusa、Mosquitto:对 Debian Trixie 的(改进)支持
- 针对 DietPi-Update、Jellyfin、Node.js、Lidarr、Prowlarr、Bazarr、SABnzbd、Medusa 的修复
完整的发布说明可以在以下链接找到: https://dietpi.com/docs/releases/v9_19/
我创建了 FastWorker,因为我厌倦了在 FastAPI 应用中为简单的后台任务部署 Celery + Redis。每当我需要将工作从 API 请求中卸载时,都必须管理 4-6 个独立的服务。对于小型项目来说,这感觉有些过于复杂。
FastWorker 是一个无代理的任务队列,只需要 Python 进程。无需 Redis,无需 RabbitMQ——只需 2-3 个 Python 服务,而不是 4-6 个以上。
---
快速示例:
# tasks.py
```python
from fastworker import task
@task
def send_email(to: str, subject: str):
return {"sent": True}
```
# FastAPI 应用
```python
from fastworker import Client
client = Client()
@app.post("/send/")
async def send_notification(email: str):
task_id = await client.delay("send_email", email, "欢迎!")
return {"task_id": task_id}
```
启动工作进程:
```
fastworker control-plane --task-modules tasks
fastworker subworker --task-modules tasks # 可选
```
---
架构:使用 NNG 消息传递进行直接的点对点通信。控制平面通过优先级堆协调任务分配,并跟踪工作负载。工作进程通过发现套接字自动发现。结果以 LRU/TTL 的方式缓存于内存中。
设计用于:中等规模的 Python 应用(每分钟 1K-10K 个任务)进行后台处理——图像调整大小、报告生成、电子邮件、Webhook。非常适合 FastAPI/Flask/Django。
不适用于:极大规模(每分钟 100K+ 个任务)、多语言栈或需要持久任务存储的系统。对于这些情况,请使用 Celery/RabbitMQ/Kafka。
试试吧:
```
pip install fastworker
```
仓库: [https://github.com/neul-labs/fastworker](https://github.com/neul-labs/fastworker)
FastAPI 集成文档: [https://github.com/neul-labs/fastworker/blob/main/docs/fastapi.md](https://github.com/neul-labs/fastworker/blob/main/docs/fastapi.md)
希望能收到反馈,看看这个工具是否填补了一个有用的空白,或者它的局限性是否使其过于狭窄。