После каждого сообщения получается это делать если, то мы лочим код и не слушаем Кафку. В итоге код отстает от топика, а хотелось бы как то это асинхронно чтоли делать, пока мы записываем мапу в БД, то чтение сообщений из кафки чтобы не останавливалось. Не уверен в принципе что начал думать в правильном направлении и что этот кейс надо решать именно так)
Может, тогда вам это разбить на отдельные джобы? А мапу заменить на отдельное хранилище (либо кэш, либо временная таблица в базе данных) Первая джоба читает из Кафки, пишет в временное хранилище Вторая читает из временного хранилища, пишет в базу
Как вариант, да можно так сделать, просто думал может как то через ассинхронщину можно в одной джобе сделать
У вас, судя по всему БД не успевает делать upsert'ы. Тут или бустить БД, или укрупнять эти апсерты батчами.
Обсуждают сегодня