Vue d'ensemble

Daphne 4.0, publié le 1er août 2023, ajoute le support HTTP/2 et améliore les performances WebSocket.

Fonctionnalités principales

Support HTTP/2

Daphne supporte désormais HTTP/2 nativement, permettant le multiplexage des requêtes et la compression des en-têtes.

python
# Lancer Daphne avec HTTP/2
# daphne -b 0.0.0.0 -p 8000 myproject.asgi:application

# asgi.py
import os
from django.core.asgi import get_asgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myproject.settings')
application = get_asgi_application()

WebSocket amélioré

La gestion des connexions WebSocket est plus robuste avec un meilleur nettoyage des connexions fermées et des timeouts configurables.

python
# Lancer avec timeout WebSocket personnalisé
# daphne --websocket_timeout 300 myproject.asgi:application

# settings.py
CHANNEL_LAYERS = {
    'default': {
        'BACKEND': 'channels_redis.core.RedisChannelLayer',
        'CONFIG': {'hosts': [('127.0.0.1', 6379)]},
    }
}

Sources