Yalnızca Postgres ile basit ve dayanıklı iş akışları oluşturmak
(lucumr.pocoo.org)Karmaşık üçüncü taraf servisler olmadan, yalnızca Postgres kullanarak yapay zeka ajanları için dayanıklı yürütmenin (durable execution) uygulanabileceğini anlatıyor.
Başlıca noktalar
• Sorun: Yapay zeka ajanları inşa ederken, çökme veya yeniden başlatma durumlarında işleri kaybetmeden yürütmeyi sürdürmek gerekir
• Mevcut çözümlerin dezavantajları: Temporal, Inngest gibi araçlar harika olsa da karmaşıktır ve ayrı bir servis gerektirir
• Absurd'ün yaklaşımı:
- tek bir SQL dosyasıyla uygulanır
- yalnızca Postgres'in kuyruk işlevi ve durum deposu kullanılır
- her adım (
step) bir kontrol noktası olarak kaydedilir, böylece kesinti olsa bile devam edilebilir
Pratiklik
// 작업 정의
absurd.registerTask({name: "my-agent"}, async (params, ctx) => {
// 단계별로 자동 체크포인트 저장
const result = await ctx.step("iteration", async () => {
return await singleStep(messages);
});
});
// 7일 대기, 이벤트 대기 등도 가능
await ctx.sleep(60 * 60 * 24 * 7);
Sonuç: Derleyici eklentilerine veya ayrı bir çalışma zamanına gerek kalmadan yalnızca Postgres yeterli. Özellikle self-hosting gereken durumlarda cazip bir seçenek.
1 yorum
Kesinti noktasından devam edebilmek gerçekten çok iyi.