"Django es un framework web Python de alto nivel que fomenta un desarrollo rápido y un diseño limpio y pragmático."
Por qué usar Django ?
"Con Django, puede llevar las aplicaciones web desde el concepto hasta el lanzamiento en cuestión de horas. Django se encarga de gran parte de las molestias del desarrollo web, por lo que puedes concentrarte en escribir tu aplicación sin necesidad de reinventar la rueda. Es gratis y de código abierto."
Características
Ridículamente Rápido
Completamente Cargado
Tranquilamente Seguro
Extremadamente Escalable
Increíblemente Versátil
La web tradicional
El desarrollo web en general se ha movido en un paradigma donde la información se ofrecía a través de páginas web estáticas, o recuperando esa información desde una base de datos y sirviéndola siguiendo el patrón MVC
La web del futuro
Las aplicaciones necesitan ser más ricas e interactuar más con los clientes.
Nuevas tecnologías comoAjax yWebSocketsestán sobradamente consolidadas y es necesario integrarlas de la manera más rápida y sencilla posible.
Channels
Channels nos ofrece dos grandes funcionalidades nuevas, a través de una nueva abstracción:
Manejar de una forma sencilla e integrada en el framework todo el trasiego de información y la gestión asociada a los WebSockets.
Nos proporciona la posibilidad de manejar y gestionar las tareas que ejecutarán en background y que harán de consumidores.
Componentes de Channels
ASGI Server
ASGI Router
Web Workers
Conceptos Básicos
Channel: es una estructura de datos que es una cola de primero en entrar, primero en salir, ordenada, con vencimiento de mensaje y entrega a lo sumo a solo un oyente a la vez
Conceptos Básicos
Tipos de Channels
websocket.connect
wesocket.receive
websocket.disconnect
Conceptos Básicos
Consumidores:
Un consumidor es una función que recibirá un mensaje (solicitud de websocket), lo procesará y puede devolver o no una respuesta.