У меня есть требование для пакетной обработки, когда мне нужно использовать сообщения плоского файла из Kakfa, проанализировать его в java beans, вставить его в БД, обработать сообщение и обновить статус сообщения в БД.
100 или 1000 плоских файлов Сообщения от Kafka будут приходить параллельно с тем же заголовком и конечной записью.
Формат сообщения будет похож на
Сообщение 1:
( Заголовок) 0000001901093740001I9374AUV 245010820030���
(запись) 000001501394516070010145227072219
(трейлер) 00001209011937400010000005940400000000000000072991400
1013 *1013* сообщение 59404000000000000000729914 *1013* то же самое с * ��
abcljadjl11009012141204104
0000120901193740001000000594040000000000000000000729900
и так далее ...
Я хочу вставить запись заголовка передачи в базу данных.
Нужно иметь лучший лог c, чтобы понять, для первой записи это или нет. Будет несколько сообщений параллельно, но мне нужно вставить только в первый раз.
Я думал об использовании ehcache для хранения заголовка и проверки ehcache для каждого входящего сообщения перед переходом в БД. Также, если я получаю параллельное сообщение, обработайте уникальное ограничение из БД и поместите в кеш, если его нет.
Ищу другой лучший подход к этой проблеме.