Sanic — это веб-сервер и веб-фреймворк Python 3.8+ , созданный для быстрой работы. Он позволяет использовать синтаксис async/await
, добавленный в Python 3.5, что делает ваш код неблокирующим и быстрым.
Sanic также совместим с ASGI, поэтому вы можете развернуть его с помощью альтернативного веб-сервера ASGI.
Исходный код на GitHub | Помощь и доска обсуждений | Руководство пользователя | Чат в Discord
Проект поддерживается сообществом и для сообщества. Вклады приветствуются!
Цель проекта — предоставить простой способ запуска и запуска высокопроизводительного HTTP-сервера, который легко создавать, расширять и, в конечном итоге, масштабировать.
Посетите открытый коллектив, чтобы узнать больше о помощи в финансировании Sanic.
pip3 install sanic
Sanic использует
uvloop
иujson
для повышения производительности. Если вы не хотите использовать эти пакеты, просто добавьте переменную средыSANIC_NO_UVLOOP=true
илиSANIC_NO_UJSON=true
во время установки.$ экспорт SANIC_NO_UVLOOP=истина $ экспорт SANIC_NO_UJSON=истина $ pip3 install --no-binary :all: sanic
Примечание
Если вы используете чистую установку Fedora 28 или более поздней версии, убедитесь, что у вас установлен пакет redhat-rpm-config
на случай, если вы захотите использовать sanic
с зависимостью ujson
.
из sanic import Sanicfrom sanic.response import jsonapp = Sanic("my-hello-world-app")@app.route('/')async def test(request):return json({'hello': 'world'} )if __name__ == '__main__':app.run()
Sanic теперь можно легко запустить с помощью sanic hello.app
.
[2018-12-30 11:37:41 +0200] [13564] [ИНФО] Goin' Fast @ http://127.0.0.1:8000 [2018-12-30 11:37:41 +0200] [13564] [ИНФО] Начальный рабочий [13564]
И мы можем убедиться, что он работает: curl localhost:8000 -i
HTTP/1.1 200 ОК Соединение: поддержание активности Поддержание в живых: 5 Длина контента: 17 Тип контента: приложение/json {"Привет, мир"}
А теперь давайте построим что-нибудь быстро!
Минимальная версия Python — 3.8. Если вам нужна поддержка Python 3.7, используйте версию 22.12LTS.
Руководство пользователя, журнал изменений и документацию по API можно найти на сайте sanic.dev.
Задайте вопрос или присоединитесь к разговору.
Мы всегда рады новым публикациям. Мы отметили проблемы, подходящие для тех, кто хочет начать, и приветствуем вопросы на форумах. Пожалуйста, ознакомьтесь с нашими правилами внесения взносов.