Seul le premier est ce que les gens veulent habituellement dire, et seul le troisième est surprenant.
La configuration se recharge de toute façon
Le gateway sonde les changements de base.reload existe parce que le sondage a jusqu’à trente secondes de retard, ce qui est trop lent quand vous regardez.
Le crédit n’est pas de la configuration
reload ne le touche pas, et c’est celui qui piège les gens.
Le gateway réserve le crédit en blocs. Il déplace l’argent de account_balance.balance vers reserved et tient le bloc en mémoire. C’est ce qui garde le chemin des messages hors de la base.
Donc corriger un solde à la main ne prend pas effet tant que le bloc déjà remis n’est pas consommé. Un compte réglé à zéro continue d’envoyer.
credit release restitue le reste non dépensé de chaque bloc à balance et écrit une ligne RELEASE dans le grand livre, pour que le prochain message réserve contre le chiffre corrigé.
La même commande après un crash
Unkill -9 bloque ce qui était réservé. L’argent est parqué, pas perdu. balance + reserved s’équilibre toujours. Et credit release est comment il revient.
Un arrêt propre le fait tout seul.
Ce qu’un reload ne fait pas
- Il ne redémarre pas les workers. Un worker qui a échoué à binder retente selon son propre calendrier ; un listener qui n’a pas pu prendre son port retente au prochain sondage ou reload sans nécessiter de redémarrage.
- Il n’efface pas l’état d’exécution posé par
disable,suspendouhold. Ceux-là sont délibérément hors de la configuration pour qu’ils puissent agir immédiatement. Et ils reviennent à la normale au redémarrage plutôt qu’au reload. - Il ne change pas ce qu’une session bindée est autorisée à faire. Un changement de taux s’applique aux sessions SMPP déjà bindées en environ 200 ms ; il ne les oblige pas à se rebinder.
Connexes
Contrôle des workers
Les verbes qui agissent immédiatement plutôt qu’à un sondage.
Crédit prépayé
Blocs, réservations, et pourquoi le solde traîne.