Créer et déployer un processeur de webhooks en Go
Crée un service Go qui reçoit le contenu de webhooks tiers, le valide et écrit des enregistrements d’événements propres dans SQL.
La stack
- Go avec
net/httpou Gin - Postgres ou MySQL
- Un environnement d’exécution persistant avec pooling natif des connexions Go
- Routage, TLS, journaux et commandes de déploiement Adios
Pourquoi un service Go persistant convient aux webhooks
Un service Go compilé peut garder les connexions à la base de données ouvertes et valider les signatures dans un seul processus persistant. Adios fournit autour de ce processus l’environnement d’exécution, la route, TLS, les journaux, les contrôles de santé et les références aux secrets.
1. Créer le gestionnaire
Demandez à l’agent IA Adios :
Build a Go webhook processor with POST /webhooks/:provider. Verify a shared
signature header, decode JSON, store events in Postgres, and expose /healthz.
Use context-aware database calls and tests for invalid signatures.
2. Ajouter adios.yaml
name: webhook-processor
region: de
replicas: 2
build_cmd: go build -o /app/webhook-processor ./cmd/server
start_cmd: /app/webhook-processor
runtime:
name: go@1.25
port: 8080
health_path: /healthz
memory_mb: 512
env:
DATABASE_URL: secret://DATABASE_URL
WEBHOOK_SECRET: secret://WEBHOOK_SECRET
requires:
- db
3. Déployer
adios secrets set WEBHOOK_SECRET
adios up
adios logs --runtime
4. Tester la charge du gestionnaire
Utilisez votre outil de test de charge préféré sur la route générée. Observez la latence des requêtes, les journaux d’exécution et les écritures en base de données. L’objectif est de comprendre comment un petit binaire Go se comporte avec du trafic réel, plutôt que de viser un benchmark fictif.
Consultez la Parcours de déploiement Go, comparez les Modèles d’API Go, et utilisez le Vérifications de déploiement PostgreSQL avant d'adapter le gestionnaire pour les événements de production.