Vous n'êtes pas identifié(e).

#1 29/01/2020 16:24:22

Juju
Membre

Appel en boucle d'une procédure stockée

Bonjour à tous,

OS : CentOS 7.6.1810
Postgres v11.5

Je souhaiterais faire un truc tout bête : appeler une procédure stockée toutes les 50 ou 100 ms. J'ai regardé du côté de cron ou pg_cron mais le minimum est de 1 minute.

J'ai testé une solution un peu rapide/bourrin : j'ai créé une 2ème procédure stockée, que je lance en arrière plan avec psql, qui boucle à l'infini, appelle la 1ère procédure puis fait un pg_sleep, et donc tout ça à l'infini, mais au bout d'un moment j'ai un out of memory (je n'ai pas encore creusé pourquoi).
Quelle solution serait la plus simple à mettre en place et aussi facile à monitorer (pour lever une alerte en cas de plantage) ?

Merci pour vos suggestions.
Julien.

Hors ligne

#2 29/01/2020 19:29:05

gleu
Administrateur

Re : Appel en boucle d'une procédure stockée

Le mieux est certainement de créer un script (bash, perl, pyton, peu importe) qui fait cette boucle de 1 seconde et qui lance la procédure stockée toutes les secondes et d'exécuter ce script via un service systemd. Peut-être même que systemd permettrait ce lancement toutes les secondes. Bref, je le mettrais plutôt hors de la base de données.


Guillaume.

Hors ligne

#3 31/01/2020 16:18:16

Juju
Membre

Re : Appel en boucle d'une procédure stockée

Bonjour,
Merci pour votre retour, je vais effectivement partir sur une solution hors DB, à priori plutôt un script python.
Merci.
Julien.

Hors ligne

Pied de page des forums