Daniel Roy Greenfeld : Utilise... Note

Daniel Roy Greenfeld : Utiliser pyinstrument pour profiler les applications Air

Air, basé sur FastAPI, peut tirer parti de pyinstrument pour le profilage des performances. Pour activer cela, installez à la fois air[standard] et pyinstrument. Le code d'exemple montre comment intégrer pyinstrument en l'activant conditionnellement en fonction d'une variable d'environnement nommée PROFILING. Ceci est crucial pour éviter les surcoûts de performance dans les environnements de production. Une fonction middleware, profile_request, intercepte les requêtes HTTP. Si un paramètre de requête profile est présent, pyinstrument commence le profilage. Après que la requête a été traitée par call_next, pyinstrument s'arrête et renvoie une sortie HTML des résultats du profilage. Cela permet une inspection visuelle des goulots d'étranglement de performance. L'application comprend une page index avec des liens pour simuler des délais à l'aide de asyncio.sleep. Ces liens peuvent être accédés avec le paramètre de requête profile=1 pour déclencher le profilage. Pour exécuter l'application avec le profilage activé sans définir définitivement la variable d'environnement, préfixez la commande du serveur de développement avec PROFILING=1. Par exemple, PROFILING=1 fastapi dev main.py activera le profilage pour cette exécution spécifique. Les résultats du profilage peuvent ensuite être consultés en naviguant vers http://localhost:8000 dans votre navigateur.
CdXz5zHNQW_NqUVTOcpDB.png