Django

Django Channels

WebSockets, ASGI, consumers, routing, channel layers, autenticazione, funzionalità in tempo reale

24 domande da colloquio·
Senior
1

Cos'è Django Channels?

Risposta

Django Channels è un'estensione che aggiunge il supporto per i protocolli asincroni a Django, abilitando WebSockets, HTTP2 e altri protocolli non-HTTP. Estende il modello sincrono richiesta-risposta di Django utilizzando ASGI (Asynchronous Server Gateway Interface) al posto di WSGI, abilitando funzionalità in tempo reale come la chat o le notifiche push.

2

Qual è la differenza principale tra WSGI e ASGI?

Risposta

WSGI (Web Server Gateway Interface) è sincrono e gestisce solo una richiesta alla volta per worker, mentre ASGI (Asynchronous Server Gateway Interface) supporta operazioni asincrone e connessioni persistenti come WebSockets. ASGI può gestire più connessioni simultanee senza bloccare, il che è essenziale per le applicazioni in tempo reale.

3

Cos'è un Consumer in Django Channels?

Risposta

Un Consumer è l'equivalente di una vista Django per le connessioni asincrone. Gestisce l'intero ciclo di vita di una connessione WebSocket: connessione, ricezione di messaggi, invio di risposte e disconnessione. I Consumer possono essere sincroni (WebsocketConsumer) o asincroni (AsyncWebsocketConsumer) e consentono di strutturare la logica di business per ogni tipo di connessione.

4

Quale metodo di un Consumer viene chiamato quando viene stabilita una connessione WebSocket?

5

Cos'è lo scope in Django Channels?

+21 domande da colloquio

Padroneggia Django per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis