У меня есть одно Django приложение с некоторыми REST-сервисами.
Я сохраняю географическое местоположение мобильных устройств, и я должен отправить уведомление pu sh (то же уведомление pu sh) всем устройствам, что они находятся в указанном местоположении c (с определенным радиус).
Я пользуюсь услугой AWS-SNS
и уже зарегистрировал мобильный на SNS.
Я не хотел бы использовать некоторые асинхронные архитектуры (например, Celery) для извлечения всех устройств, которые находятся в расположении для отправки, для каждого из них уведомления pu sh (один запрос к SNS для каждого устройства). Например, я ищу способ регистрации всех извлеченных устройств в topi c -подписке оптом и, после этого, по запросу, чтобы отправить уведомление pu sh всем устройствам, что они зарегистрированы в этой topi c.
Моя цель (в лучшем случае) может быть:
- Получить все устройства по географическому местоположению;
- Создать SNS topi c выделенный для этого запроса;
- Один запрос на массовое хранение этих устройств для этой темы;
- Один запрос на отправку уведомления pu sh для этой темы;
Это возможный подход, например. Я хотел бы сократить запрос до SNS и не использовать (например) Celery для создания различных асин c шагов для этого.
Есть ли в boto3
(или вообще для AWS -SNS) способ массового хранения большего количества устройств на топи c?
Это хороший подход для достижения моей цели или для этого есть какие-то другие методы, которых я не знаю?