Господа, помогите понять, пожалуйста. Крч у меня есть скрипт, который

парсит сайт и отдает ответ пользователю.
Я сделал тг бота, по моей логике, пользователь, который обращается к боту, может запустить этот скрипт и получать ответ. Соответственно, таких пользователей одновременно может быть бесконечное количество.
Как правильно это реализовать? Чтобы для каждого юзера скрипт получал определенные данные на вход и выдавал результат каждому юзеру соответсвующий его запросу?
Я правильно понимаю что для этого необходимо использовать многопоточность ноды или это не то?

11 ответов

18 просмотров
Timur- Автор вопроса

на англ че гуглить

Думаю кролик слишком жирно будет для этой задачи, можно и Redis обойтись

Timur- Автор вопроса

Если в долгосрок смотреть, то да, но он больше времени на освоение потеряет)

Timur
redis эт чето с сессиями вроде связано?

Необязательно только для сессий, это key-value хранилище

Можно использовать основной поток для обработки запросов тг, а в воркертреде ловить запросы на парсинг и выдавать их основному потоку

Timur- Автор вопроса

от души

Timur- Автор вопроса

привет, ну я вроде чуть разобрался с рэббитом. Подскажи пожалуйста, правильно ли я понимаю, как у меня должно быть устроено приложение. Напомню, у меня парсер сайта, этим парсером одновременно должны пользоваться несколько юзеров, и соответсвтенно у каждого своя ссылка сайта, которая будет парситься: Я делаю, допустим, десяток воркеров - условно под 10 юзеров. Через таск (в боте) я передаю задачи от каждого юзера на первый свободный воркер, и уже воркер запускает скрипт парсера для каждого такого юзера. И еще вопрос. Т к результат приходит в тг бота, как правильнее будет отправлять этот результат. Через вебхуки или просто ctx.reply?

Timur- Автор вопроса

спасибо, а воркеров нужно вручную плодить? или есть какой то способ запускать/останавливать ненужных?

Timur- Автор вопроса

ну я через докер рэббит запустил. в моем понимании докер используется ток для того чтобы упростить разработку приложений, разве не так? его как то используют уже в продактшене?

Похожие вопросы

Обсуждают сегодня

Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Добрый день. Мне посоветовали обратиться к вам в чат за помощью. Ситуация описана на скрине. Как мне сказали, мне на бота навесили флудвейт. Есть ли возможность снять его ра...
OVERLINK
7
Просто по очереди выпиливаешь на ручной маппинг? По методу за раз
Andrii Kurdiumov
7
И? Все равно глазами проверять надо каждое поле
Andrii Kurdiumov
4
Ну есть у нас десяток компаний которым надо. Остальным то зачем?
Andrii Kurdiumov
4
Всем привет! Взялся портировать модули на 18 версию, лезет _logger.log(log_level, 'no translation language detected, skipping translation %s', frame, stack_info=True) А чт...
Max Lit
3
Приветствую. А не подскажете какие ограничения есть на использования api метода setMyName ? Несколько раз сменил имя бота и получил бан на 2 месяца на смену имени.
Slick Slack
8
Доброе утро, а кто то делал Google аналитику через php ? curl_setopt($ch, CURLOPT_NOSIGNAL, true); Это должно быть async без ожидания ответа. Вообще php нормально с таким с...
Max Dubovsky
9
Привет, коллеги! Возникла задача ограничить максимальный размер вложений для определённых расширений, например, чтобы для изображений лимит был 10 МБ, а для видео — 100 МБ. Ог...
Andro
1
Всем привет, добавляю поля в админку через контроллер взависимости от id, поля отображаются, сохраняются в бд, но не редактируются в админке, кто-то сталкивался с таким?
Catherine Poll
4
Карта сайта