Compétences dbos-golang
📦

dbos-golang

Sûr

使用 DBOS 构建可靠的 Go 应用

DBOS Go SDK 提供持久化工作流执行,能够在崩溃和重启后自动恢复。通过自动重试、队列并发和事务保证,构建容错应用程序。

Prend en charge: Claude Codex Code(CC)
🥈 77 Argent
1

Télécharger le ZIP du skill

2

Importer dans Claude

Allez dans Paramètres → Capacités → Skills → Importer un skill

3

Activez et commencez à utiliser

Tester

Utilisation de "dbos-golang". 创建一个 DBOS 工作流,从 API 获取数据,处理它,并将结果存储在数据库中。

Résultat attendu:

  • 使用 DBOS 注册处理完整数据管道的工作流
  • 为 API 获取、数据处理和数据库存储定义的步骤
  • 针对瞬时故障的自动重试配置
  • 在故障时保留工作流状态的适当错误处理

Utilisation de "dbos-golang". 如何配置 DBOS 使用环境变量进行数据库连接?

Résultat attendu:

  • 使用来自环境的 DatabaseURL 的 DBOS 上下文配置
  • 正确的环境变量命名(DBOS_SYSTEM_DATABASE_URL)
  • 展示如何优雅地处理缺失数据库配置的示例

Audit de sécurité

Sûr
v1 • 2/24/2026

This is a documentation skill for the DBOS Go SDK. All 479 static findings are false positives: the scanner incorrectly interprets markdown code blocks as shell commands, documentation URLs as hardcoded URLs, and environment variable access for database configuration as sensitive data exposure. No real security risks present.

32
Fichiers analysés
2,062
Lignes analysées
0
résultats
1
Total des audits
Aucun problème de sécurité trouvé
Audité par: claude

Score de qualité

45
Architecture
100
Maintenabilité
87
Contenu
50
Communauté
100
Sécurité
100
Conformité aux spécifications

Ce que vous pouvez construire

构建容错订单处理

创建订单处理工作流,在失败时自动重试,在服务器重启后继续执行,并在多个服务之间保持事务一致性。

实现可靠的数据管道

构建具有持久化执行的数据管道,在数据库中检查点进度,确保在故障期间不丢失数据。

创建后台作业系统

使用 DBOS 队列替代自定义作业队列,提供内置并发限制、优先级处理和自动恢复功能。

Essayez ces prompts

将 DBOS 添加到现有 Go 应用
在我位于 [PATH] 的现有 Go 应用程序中添加 DBOS 持久化工作流执行。我需要将当前的后台作业处理转换为使用具有自动重试功能的 DBOS 工作流。
创建带步骤的工作流
创建一个处理用户注册的 DBOS 工作流。工作流应发送欢迎邮件(步骤 1)、在数据库中创建用户账户(步骤 2)并安排后续任务(步骤 3)。包含适当的错误处理和重试。
实现带限制的队列
实现一个用于处理 API webhooks 的 DBOS 队列。队列应处理最多 10 个并发请求,优先处理关键 webhooks,并实施速率限制以防止压垮下游服务。
设置工作流通信
使用 DBOS 事件和消息设置工作流间通信。工作流 A 应在数据处理完成时通知工作流 B,工作流 C 应将进度更新流式传输到外部监控器。

Bonnes pratiques

  • 始终将副作用(API 调用、数据库写入)定义为步骤,而不是在工作流主体中,以确保确定性和自动重试
  • 在调用 dbos.Launch() 之前注册所有工作流和队列——这是一个硬性要求
  • 对于并行工作流执行,使用带有并发限制的队列而不是 goroutine

Éviter

  • 从步骤函数内部启动或入队工作流——这会破坏事务保证
  • 使用不受控制的 goroutine 启动工作流而不是使用 dbos.RunWorkflow 或队列
  • 从工作流或步骤修改全局变量——这违反了持久性保证

Foire aux questions

什么是 DBOS?
DBOS(Database-Oriented Business Operating System,面向数据库的业务操作系统)是一个提供持久化工作流执行的框架。工作流自动在崩溃和重启后恢复,因为其状态存储在 PostgreSQL 数据库中。
使用 DBOS 需要数据库吗?
是的,DBOS 需要 PostgreSQL 数据库来存储工作流状态、检查点和队列数据。数据库 URL 通过 DatabaseURL 配置选项进行配置。
可以从工作流调用 API 吗?
可以,但 API 调用必须从步骤中发出(使用 dbos.RunAsStep),而不是直接在工作流中。这确保了适当的重试处理和持久性。
DBOS 中的重试是如何工作的?
步骤在失败时自动重试。您可以使用步骤选项配置重试策略。当步骤失败时,工作流会暂停并重试该步骤,直到成功或达到重试限制。
工作流可以相互通信吗?
是的,DBOS 提供用于单向通知的事件、用于请求 - 响应模式的消息,以及用于在工作流之间流式传输数据的流。
DBOS 适合生产使用吗?
是的,DBOS 专为生产工作负载而设计。它提供事务保证、故障自动恢复,并支持版本控制和修补等模式,以实现零停机部署。