返回首页
最新
嗨,HN!我是Qian,这里还有Peter(KraftyOne)和Jeremy(jedberg)。我们正在构建DBOS,这是一个开源的轻量级持久化工作流库,您只需几行代码即可将其添加到Python应用程序中。它与流行的开源工作流和队列库(如Airflow和Celery)相当,但更加轻量,且更注重可靠性和自动从故障中恢复。
我们构建DBOS的目标是使工作流轻量灵活,以便您可以以最小的工作量将其添加到现有应用程序中。运行持久化工作流和队列所需的一切都包含在这个Python库中。您无需管理单独的工作流服务器:只需安装库,将其连接到Postgres数据库(以存储工作流/队列状态),就可以开始使用了。
DBOS工作流通过在Postgres中检查点程序状态来使您的程序具有持久性。如果您的程序出现故障,重新启动时,所有工作流将自动从上一个完成的步骤恢复。您可以通过将普通函数标注为工作流和步骤来将持久化工作流添加到现有程序中:
```python
from dbos import DBOS
@DBOS.step()
def step_one():
...
@DBOS.step()
def step_two():
...
@DBOS.workflow()
def workflow():
step_one()
step_two()
```
工作流只是一个普通的Python函数。您可以通过任何方式调用它——从FastAPI处理程序中、响应事件时,或在您通常调用函数的地方。
我们刚刚发布了DBOS Python 1.0。这增强了工作流,增加了我们在过去几个月中构建的许多强大功能,包括:
- 持久化队列。基于Postgres的队列,具备BullMQ/Celery的所有排队功能(并发限制、速率限制、超时、优先级、去重等)。此外,它们与持久化工作流集成,因此您可以编写一个工作流,将1000个任务入队,等待并处理它们的结果,并自动从任何中断中恢复。
- 程序化工作流管理。您的工作流存储为Postgres表中的行,因此您可以对其进行完全的程序化控制。编写脚本查询工作流执行情况、批量暂停或恢复工作流,甚至从特定步骤重新启动失败的工作流。这使得诊断和恢复影响数千个工作流的错误和故障变得更加容易。
- 完全支持同步和异步Python——您可以同步或异步地编写工作流和步骤,所有功能开箱即用。
- 改进的工具,包括仪表板、工作流图可视化、通过Web UI进行工作流管理等。
我们非常希望听到您的反馈,并希望您能试用DBOS!
值班开发者们,告别周六凌晨两点的通知吧。<p>Poseidon v0.1 通过分析过去的事件、日志、指标和操作历史,来建议根本原因(演示见 README)。<p>在下一个版本中,Poseidon 将与您组织中的更多工具通过 MCP 连接,并在总结中发送一个“止损”按钮到您的 Slack 消息中。<p>这个止损按钮可以:
1. 恢复错误的配置
2. 恢复错误的发布
3. 关闭功能开关
4. 清空队列等<p>与 Netflix/dispatch 的集成将使其更加强大。<p>期待对这个概念、代码以及如何使其更具通用性的反馈!
我不知道为什么,但我有一种感觉,巨额资金(如NVIDIA的市值达到数万亿,数十亿投入到基于大型语言模型的公司)是由一个单一的想法支撑的,而这个想法最终可能会被完全不同的范式或新的大型语言模型方法所取代,这可能会在几个月内使这一切变得毫无价值。
需要明确的是,我并不是说这个想法没有重大影响,我实际上认为这是一次革命。自从2017年《Attention Is All You Need》发布以来,一切都发生了快速变化,但我也感觉到,研究领域可能会以类似的方式出现另一个突破。
Tape/Z 是一个不断发展的工具包,用于分析大型机(z/OS)上的 HLASM(高级汇编语言)代码。该库提供了处理大型机汇编代码的功能,包括解析、控制流图构建、依赖追踪和流程图可视化功能。
请访问 <a href="https://github.com/avishek-sen-gupta/tape-z">https://github.com/avishek-sen-gupta/tape-z</a> 了解更多信息。<p>它是 Cobol-REKT 的兄弟项目(<a href="https://github.com/avishek-sen-gupta/cobol-rekt">https://github.com/avishek-sen-gupta/cobol-rekt</a>)。
在调试我的无服务器函数时遇到了困难,除了将它们部署到 Vercel 并等待在客户端进行测试。特别具有挑战性,因为它们是基于数据库触发器运行的……不确定是否有更好的方法?有人知道吗?