Как сохранить постоянные соединения веб-сокета с другим API в моем приложении Django?

Я разрабатываю Django-приложение, которому требуется постоянное WebSocket-соединение для непрерывного получения живых данных из API криптовалютного рынка. Мне нужно поддерживать это WebSocket-соединение активным на протяжении всего жизненного цикла приложения, чтобы обновлять локальные данные по мере поступления новой информации. Эти обновленные данные впоследствии будут отображаться на фронт-энде, поэтому я предполагаю, что мне понадобится отдельное WebSocket-соединение между фронт-эндом и бэк-эндом (одно соединение для бэкэнда с API криптовалютного рынка, а другое - для бэкэнда с фронт-эндом).

Я новичок в этом типе настроек и был бы признателен за рекомендации по лучшим практикам для их реализации. Я изучил Django Channels, Uvicorn и Daphne. Хотя Django Channels может подойти для WebSocket-соединения между фронтендом и бэкендом, я больше сосредоточен на поддержании надежной структуры событийных циклов для соединения бэкенда с криптографическим API, чтобы гарантировать, что оно остается живым и отзывчивым. Я рассматриваю возможность создания собственного менеджера событийных циклов, чтобы справиться с этим, но я не уверен, что это лучший подход.

Можете ли вы предложить какие-либо устоявшиеся методы, библиотеки или шаблоны для поддержания непрерывного WebSocket-соединения для обновления данных в реальном времени в Django-приложении?

Заранее спасибо!

Вернуться на верх