Ammélioration des performance
Cas des requêtes dites asynchrones
IL n'est pas jugé bon de les rendre les services complètement asynchrones. Pour l'interface et les tests on a besoin de savoir que le traitement est terminé pour afficher le resultat ou continuer le traitement.
-
On doit cependant détacher le thread courant : utilisation d'une complétable -
Rajouter un header qui s'il est présent renvoyer une réponse 200 juste après le chargement des fichiers.
différents cas de services.
Service dont la réponse commence immédiatement (Flux ou streamBody)
- récupération de la listes des application (renvoit les resultat / erreur/ avancement ) au fil de l'eau pour permettre un traitement en continue.
- dépôt de fichier pour l'envoie des erreurs au fil de l'eau, puis de la synthèse
- chargement de fichier (zip, csv, json). Le téléchargement débute dès le début et se remplit au fil de l'eau.
requêtes attendant la fin du traitement pour envoyer la réponse
-
ex json des donnees pour affichage
-
mise à jour des droits
-
travailler la requête pour limiter les appels à la base -
supprimer le cache disque
requêtes sans réponse
L'extraction du zip n'a pas besoin de réponse puisque les erreurs et le zip sont envoyés par mail
-
trouver quoi faire de la réponse (retour 200 ou flux?)
## amélioration du traitement de la réponse
-
travailler la requête pour limiter les appels à la base -
optimisation des traitements -
avoir des résultats déjà prêts dans la réponse
Edited by Philippe Tcherniatinsky