kafkaProducerTemplateLock.readLock().lock();
                  
                  
                      try
                  
                  
                      {
                  
                  
                        kafkaTemplate.send(topic, key, eventPayload);
                  
                  
                      }
                  
                  
                      finally
                  
                  
                      {
                  
                  
                        kafkaProducerTemplateLock.readLock().unlock();
                  
                  
                      }
                  
                  
                  
                  
                  
                  Кто нибудь знает, зачем надо лочить отправку сообщений?
                  
                  
                
Скорее всего бессмысленная затея. Во-первых, KafkaTemplate можно использовать из разных потоков, во-вторых, метод send() вообще асинхронный, там почти ничего не происходит
похоже разобрался зачем. Там в другом методе есть пересоздание темплейта, и оно блочится на запись. Скорее всего это сделано для того, чтобы в рантайме можно было переконфигурировать темплейт, а тот кто хотел послать сообщение не упал с NPE
Обсуждают сегодня