@KislyFan
инженер, связист и просто любитель выпить

Как организовать диспетчер и очередь подключений?

Не могу понять как лучше написать логику приложения. У меня условно есть сервер, к которому я хочу подключиться через REST в несколько потоков. Но сервер может поддерживать одновременно только 4 сессии от одной учетки. Создал пятую - одна из первых четырех будет убита. Одни запросы простые и быстрые, (отправил запрос)->(прочитал ответ), другие медленные (отправил запрос на выполнение задачи)-> (следующим запросом прочекал статус задачи) -> (если ок, то отправил запрос и получил ответ). Я подозреваю, что тут (возможно) нужен какой-то диспетчер с пулом подключений и с (возможно) очередью запросов. Но не знаю хорошее ли это будет решение, и можно ли сделать лучше.. Опять же не понятно, хранить пул, и забирать httpClient из него, или хранить число доступных (оставшихся) подключений в переменной, которая будет лочится при доступе..
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ответы на вопрос 1
vabka
@vabka
Токсичный шарпист
Очередь запросов можно реализовать через System.Threading.Channels.
Чтобы сессии не отваливались - запусти ровно четыре таски, которые будут разгребать канал.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы