Как запустить фасоль на определенную нить - PullRequest
0 голосов
/ 19 июня 2019

У меня есть приложение springBoot, которое имеет несколько бинов, которые запускаются и работают нормально. У него также есть один @Service с @KafkaListener, который мне нужен для запуска из основного потока.

KafkaListener не является потокобезопасным, и я думаю, что он не может быть @Async. Я не хочу выделять много потоков, он может работать только в одном потоке.

        SpringApplication.run(myApp.class, args);
    }
@Service
public class SubscriberService {
    @KafkaListener(topics = "symbols", groupId = "group_id", topicPartitions = {@TopicPartition(topic = "topicName", partitionOffsets = @PartitionOffset(partition = "#{topicUtil.getPartition()}", initialOffset = "0"))})
    public void getSymbols(String message) throws IOException {
        //do some stuff with each message from kafka
    }

Что я могу сделать, чтобы пружина запустила это на собственной (единственной) нити от основной?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...