Récemment, dans le cadre du développement d’un back office web pour une application mobile, nous avons été confronté à une problématique de performance sur l’envoi de notifications mobiles.

Le Back-Office permet au clientd’écrire des messages qu’ils peuvent envoyer via notification à tous les utilisateurs de l’application. A la livraison de la fonctionnalité, pas de problème. On a 3.000 device token enregistrés en base de données, l’envoi des notification passe bien. Passent des mois, et le nombre d’application installées augmente. Arrive un moment où l’envoi de notification prend du temps, beaucoup de temps. Trop de temps.

Le développement qui avait été fait initialement pour envoyer les notifications n’a pas tenu la charge.

Une fois le problème détecté, plusieurs tentatives d’amélioration ont été faites. Elles avaient pour objectif de minimiser l’impact sur le code existant. Ces tentatives ont été infructueuses : soit le temps passé à l’envoi n’était pas significativement plus faible, soit l’envoi était très instable.

Lire la suite