conferences | speakers | series

Django, asyncio e websockets

home

Django, asyncio e websockets
Python Brasil 2022

Será demonstrado um padrão para desenvolvimento de aplicações web em tempo real, utilizando signals do Django, com Channels, ASGI, REST Framework e Celery.

Desde que a ASGI foi implementada no Django, em 2019, que é possível dispor de toda a agilidade, escalabilidade e consistência desse framework para desenvolver aplicações em tempo real, utilizando websockets, sem inserir latência na propagação das atualizações do banco de dados para o navegador. Nesta palestra, será demonstrado um padrão para isso, usando como exemplo uma sala de chat. Ao final, será lançado uma nova camada para o Django que torna o processo mais rápido, simples e elegante. O código é resultado de 20 meses de desenvolvimento e maturação em produção e será publicado na Python Brasil. Tópicos: - Apresentação do palestrante e porquê agora, com ASGI, Django é **O Framework** - Apresentação do backend de uma aplicação de chat completa, síncrona, sem websockets, utilizando REST Framework. Este é o contexto de um projeto existente, em que será implementada atualização em tempo real por websockets. - Explicação do asyncio e a programação assíncrona, explicando o que está por trás, sem aprofundar, com foco na prática. - Apresentação do Django Channels - Implementação de um signal que envia atualizações do modelo direto pelo websocket. - Aprofundamento sobre asyncio, demonstrando como a latência é reduzida sem aumentar o consumo de recursos. Explicação sobre o broker (Redis / RabbitMQ) - Integração com Celery para tarefas em background - Apresentação de um novo módulo Django que torna todo esse processo muito mais simples, rápido e elegante. Link: https://www.youtube.com/watch?v=GZm9w77WUkY

Speakers: Asa