Je fais un projet où j'ai besoin de tous les appels d'API pour prendre moins de 1s mais je suis confronté à un problème avec le premier appel à chaque route qui est plus lent que les suivants.
Actuellement, le premier appel à / login prend 3,6 secondes et les suivants prennent 170 ms et même pour toutes les autres routes.
J'ai découvert -XX:+TraceClassLoading
qu'en utilisant cela lors du premier appel, les classes étaient chargées en mémoire et cela causait le problème de performances.
Cependant, je n'ai pas trouvé de moyen facile de charger toutes les classes au démarrage et pour chaque nouveau service, j'ai besoin d'ajouter un appel de préchauffage dans un ApplicationRunner.
Quelqu'un a-t-il une solution pour charger automatiquement les classes d'une application SpringBoot ou réchauffer toutes ses routes?
invokedynamic
et nous savons que la résolution est lente au premier appel pour celles-ci (nous avons des dizaines de milliers de ces appels, qui sans ce premier appel s'accumulent à des dizaines de secondes).