Sanic es un servidor web y un marco web Python 3.8+ que está escrito para funcionar rápidamente. Permite el uso de la sintaxis async/await
agregada en Python 3.5, lo que hace que su código sea rápido y sin bloqueos.
Sanic también es compatible con ASGI, por lo que puede implementarlo con un servidor web ASGI alternativo.
Código fuente en GitHub | Foro de ayuda y discusión | Guía del usuario | Chatear en discordia
El proyecto lo mantiene la comunidad, para la comunidad. ¡Las contribuciones son bienvenidas!
El objetivo del proyecto es proporcionar una forma sencilla de poner en marcha un servidor HTTP de alto rendimiento que sea fácil de construir, ampliar y, en última instancia, escalar.
Consulte el colectivo abierto para obtener más información sobre cómo ayudar a financiar Sanic.
pip3 install sanic
Sanic utiliza
uvloop
yujson
para ayudar con el rendimiento. Si no desea utilizar esos paquetes, simplemente agregue una variable ambientalSANIC_NO_UVLOOP=true
oSANIC_NO_UJSON=true
en el momento de la instalación.$ exportar SANIC_NO_UVLOOP=verdadero $ exportar SANIC_NO_UJSON=verdadero $ pip3 instalar --no-binario :todos: sanic
Nota
Si está ejecutando una instalación limpia de Fedora 28 o superior, asegúrese de tener instalado el paquete redhat-rpm-config
en caso de que desee utilizar sanic
con dependencia ujson
.
from sanic import Sanicfrom sanic.response import jsonapp = Sanic("my-hello-world-app")@app.route('/')async def test(solicitud):return json({'hello': 'world'} )si __nombre__ == '__main__':app.run()
Sanic ahora se puede ejecutar fácilmente usando sanic hello.app
.
[2018-12-30 11:37:41 +0200] [13564] [INFO] Yendo rápido @ http://127.0.0.1:8000 [2018-12-30 11:37:41 +0200] [13564] [INFO] Trabajador inicial [13564]
Y podemos verificar que está funcionando: curl localhost:8000 -i
HTTP/1.1 200 correcto Conexión: mantener vivo Mantener vivo: 5 Longitud del contenido: 17 Tipo de contenido: aplicación/json {"Hola Mundo"}
¡Ahora vamos a construir algo rápido!
La versión mínima de Python es 3.8. Si necesita compatibilidad con Python 3.7, utilice v22.12LTS.
La guía del usuario, el registro de cambios y la documentación de la API se pueden encontrar en sanic.dev.
Haga una pregunta o únase a la conversación.
Siempre estamos felices de tener nuevas contribuciones. Hemos marcado los problemas como buenos para cualquiera que quiera comenzar y agradecemos las preguntas en los foros. Por favor, eche un vistazo a nuestras pautas de contribución.