[PYTHON] Django haute performance - Modèle

J'ai beaucoup appris en lisant High Perfomance Django, j'ai donc rédigé un mémorandum.

Réduisez le nombre de requêtes

Veuillez l'utiliser correctement. Pendant le développement, vérifiez la requête émise avec la barre d'outils Django Debug.

Temps d'exécution des requêtes plus court

Foreign Keys Les clés étrangères génériques sont utiles, mais elles lancent parfois des requêtes avec des performances médiocres en arrière-plan. Parfois, vous devez insérer vous-même une clé externe.

cached_propety Coûteux à exécuter et le cache est efficace pour les propriétés qui sont appelées plusieurs fois. https://docs.djangoproject.com/ja/1.9/ref/utils/

Gère les petits objets

Si les résultats que vous obtenez sont énormes, utilisez-les pour améliorer vos performances.

Cache de requête

Ces deux ont été introduits dans le livre, mais Jonny Cache a arrêté le développement. (Il semble qu'il ne puisse pas être utilisé avec Django 1.5 ou supérieur ...)

Si vous créez le vôtre, le modèle Abstruct Cached présenté sur le blog de gumi vous sera utile. Modèle avec fonction de cache dans Django - Blog de l'ingénieur gumi

Autre

Autres matériaux que j'ai appris

Recommended Posts

Django haute performance - Modèle
Modèle Django: ManyToManyField
Modifications du modèle dans Django
Personnalisation du champ de modèle Django Divers
Utiliser le modèle django de l'interpréteur
Jointure externe gauche dans le modèle Django
Django
Générer automatiquement un diagramme de relation de modèle avec Django
Django: la migration ne reflète pas le modèle dans DB
DJango Memo: depuis le début (réglage du modèle)
Développement d'une application WEB avec Django [Définition de modèle]
Créez un modèle pour votre planning Django
Obtenir un modèle de référence à l'aide de Django Serializer
Implémenter un modèle utilisateur personnalisé dans Django