Задать вопрос
@AdaMorgan

Как эффективно реализовать балансировку очереди запросов на Java?

Мне нужно реализовать сбалансированную и высокоэффективную систему очередей для обработки большого количества запросов. У меня есть класс Worker, который содержит внутреннюю очередь для выполнения запросов, и у каждого Worker есть уникальный ID от 1 до n, где n — общее количество воркеров. Если количество запросов превышает определённый порог (например, 1000), я хочу равномерно распределить эти запросы между несколькими экземплярами Worker (например, при 10 000 запросах и 1000 воркеров каждый воркер должен обрабатывать около 10 запросов). Как лучше всего реализовать это на Java? Существуют ли какие-либо встроенные классы или библиотеки, которые помогут сделать это решение одновременно эффективным и понятным? Спасибо за советы!
  • Вопрос задан
  • 164 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Sputterspark
@Sputterspark
Такая балансировка уже реализована в ForkJoinPool, там и равномерное распределение по воркерам, и воркстилинг, и оптимальное переиспользование несущих потоков. Так что в текущей постановке задачи ответ выглядит как рекомендация просто валить запросы в FJP.
Ответ написан
Ваш ответ на вопрос

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

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