У меня есть проект, который читает данные от разных поставщиков; некоторые через SOAP, некоторые через HTTP, et c. Некоторые из этих провайдеров также имеют ограничение на количество одновременных подключений к ним. Например, провайдер A может разрешить неограниченное количество подключений, провайдер B может разрешить только 2, а провайдер C может разрешить 5.
Я в порядке с Micronaut, но я не знаю ничего, что встроено в него, что позволит мне ограничить количество подключений указанными c URL-адресами, если это необходимо. Итак, моя первая мысль - создать ограничение потока для каждого провайдера (возможно, используя систему планировщика Rx Java? Я полагаю, что вы можете создавать собственные, используя класс Executor Java), и позволить этому делать работу в очереди для меня. Я думаю, что я мог бы также go более ручной способ создания ConcurrentMap и сохранения количества активных соединений в нем, но это кажется более запутанным и более подверженным ошибкам.
Любой совет был бы очень признателен! Спасибо!