« Facturé à la seconde » fait partie de ces phrases qui ont l'air complètes et ne le sont pas. Derrière se trouvent plusieurs décisions qui changent ce que vous payez : ce qui est mesuré, quand l'horloge démarre et s'arrête, s'il existe un minimum, comment sont traitées les fractions de centime, et quand l'argent quitte réellement votre solde.
Cet article consigne nos réponses, calculs à l'appui, pour les sandboxes de code. L'objectif : que vous puissiez prévoir une facture au centime près avant de lancer quoi que ce soit, et reconnaître le moment où la facturation à la seconde n'est pas le bon modèle pour votre charge.
L'unité : vCPU et RAM réservés
Le prix d'une sandbox est le prix des ressources que son tarif réserve :
- $0.040 par vCPU-heure
- $0.013 par Gio de RAM et par heure
Le tarif small (0.5 vCPU, 1 GB) coûte donc 0.5 × 0.040 + 1 × 0.013 = $0.033 de l'heure, soit environ $0.0000092 par seconde. Le plus grand, max (8 vCPU, 16 GB), coûte $0.528 de l'heure.
Nous mesurons la réservation, pas la consommation. Une sandbox qui attend sa prochaine commande coûte autant par seconde qu'une qui compile un projet. Mesurer le CPU réel paraîtrait plus juste sur le papier, mais rendrait le prix impossible à connaître à l'avance, et la capacité vous est réservée de toute façon. Le trafic sortant n'est pas facturé.
L'horloge : de la création à la suppression
Une sandbox éphémère est facturée du moment de sa création jusqu'à sa suppression. Cela inclut le temps passé inactive avant que le délai d'inactivité ne la supprime, 300 secondes par défaut.
C'est de là que viennent la plupart des surprises. Un script de deux minutes, dans une sandbox que personne ne supprime, est facturé sept minutes : deux de travail et cinq d'attente du délai. La solution est banale : supprimez la sandbox quand vous avez fini (le bloc with du SDK le fait pour vous) ou réduisez le délai d'inactivité.
Le minimum : 60 secondes par sandbox
Chaque sandbox éphémère est facturée au moins 60 secondes de sa durée de vie. Démarrer une microVM, attacher son disque et son réseau puis tout démonter coûte la même chose, que le code à l'intérieur tourne une seconde ou cinquante.
| Durée de vie | Tarif | Facturé | Coût |
|---|---|---|---|
| 20 s | small | 60 s | $0.00055 |
| 61 s | small | 61 s | $0.00056 |
| 10 min | small | 600 s | $0.0055 |
| 3 h | standard | 10 800 s | $0.198 |
Le minimum s'applique une seule fois, à la fin de la sandbox, et seulement si sa durée de vie totale était inférieure à 60 secondes. Il n'y a pas de minimum supplémentaire par heure ni par commande.
Accumulation et débit : micro-dollars et centimes entiers
Voici la partie que « à la seconde » ne dit généralement pas. L'hôte des sandboxes enregistre l'utilisation par tranches horaires, une par sandbox. Une fois par minute, la tâche de facturation récupère les tranches closes, les valorise et débite le solde.
La valorisation se fait en millionièmes de dollar. Le débit se fait en centimes entiers. Ce qui reste sous le centime demeure sur votre compte et s'ajoute au débit suivant ; rien n'est arrondi vers le haut, ni par sandbox ni par heure.
À petite échelle, c'est important. Cent sandboxes de 20 secondes accumulent 100 × $0.00055 = $0.055. Vous êtes débité de cinq centimes, et un demi-centime attend le lot suivant. Si chaque sandbox était arrondie au centime, le même travail coûterait un dollar.
Deux autres propriétés méritent d'être connues :
- Chaque tranche est facturée exactement une fois. L'enregistrement d'utilisation et le débit sont écrits dans une même transaction de base de données, avec pour clé la sandbox et l'heure. Une relance ou une confirmation perdue ne peut pas débiter deux fois.
- Les pannes retardent les débits, elles ne les perdent ni ne les dupliquent. Si la facturation ne joint pas l'hôte des sandboxes, rien n'est confirmé, les tranches attendent et sont débitées au retour de la connexion.
Conséquence : le tableau de bord peut avoir jusqu'à une heure de retard sur le chiffre en direct. Pour celui-ci, GET /sandboxes/{id}/usage renvoie billed_usd et un estimated_total_usd pour la sandbox jusqu'ici.
Sandboxes persistantes : par heure entamée, avec un plafond
Les sandboxes persistantes conservent leur disque entre les sessions, jusqu'à 30 jours. Elles sont facturées par heure entamée : 61 minutes font deux heures. En échange, un mois calendaire (UTC) ne coûte jamais plus de 730 heures moins 25 %.
Pour le tarif standard, ce plafond est de $36.14 par mois au lieu de $48.18. Tant qu'une sandbox persistante est en pause, elle n'est pas facturée du tout.
Quand le solde est épuisé
Le solde ne passe jamais sous zéro. Les nouvelles sandboxes sont refusées avec 402 insufficient_balance. Les sandboxes éphémères déjà en cours se terminent à leur délai d'inactivité ou à leur TTL. Les persistantes sont mises en pause après 24 heures sans recharge et reprennent d'elles-mêmes dès que vous ajoutez des fonds. Les instantanés en pause sont conservés 14 jours. Ensuite la sandbox est supprimée et son id répond 410 sandbox_deleted.
Si un agent IA crée des sandboxes pour vous, fixez un plafond quotidien et mensuel. L'atteindre renvoie 429 budget_exceeded avec l'heure de réinitialisation, ce sur quoi un programme peut agir.
Là où la facturation à la seconde perd
La facturation à la seconde est excellente pour un travail mesuré en secondes et en minutes. Elle se dégrade à mesure que le travail s'allonge.
| Charge | Sandbox à la seconde | Alternative |
|---|---|---|
| Tests de 2 minutes | $0.0011 (small) | une machine facturée à l'heure compte l'heure entière |
| Traitement par lots de 3 heures | $0.198 (standard) | à peu près pareil |
| Service 24 h/24 | $36.14/mois (standard, plafond persistant) | le VPS AI agent : 4 vCPU, 4 GB pour $10/mois |
Le point de bascule se situe à peu près là où une charge tourne plus de quelques heures par jour. Au-delà, vous payez une flexibilité que vous n'utilisez pas, et un serveur loué au mois est nettement moins cher à l'heure. La façon honnête de voir la facturation à la seconde : un prix pour ne pas avoir à planifier la capacité, pas une remise.
Une estimation rapide
Prix horaire du tarif × secondes d'existence de la sandbox ÷ 3600, avec 60 secondes comme plancher. Ajoutez le délai d'inactivité si vous ne la supprimez pas vous-même. Pour les persistantes, arrondissez chaque session à l'heure supérieure et arrêtez-vous au plafond mensuel.
Toutes les règles, quotas et l'API de budget sont dans limites et facturation des sandboxes ; les appels cités plus haut sont dans la référence du SDK. Si vous vous demandez ce que vous louez au juste à la seconde, les microVM Firecracker expliquées simplement répond à la question, et ce dont les agents IA ont vraiment besoin côté infrastructure explique pourquoi le modèle de facturation compte autant quand ce sont des logiciels, et non des personnes, qui créent les machines.
Commentaires
Pas encore de commentaires. Soyez le premier.