32 lines
2.9 KiB
Markdown
32 lines
2.9 KiB
Markdown
|
**IGNITE**
|
|||
|
|
|||
|
IgniteAggregationRepository сделано на основе JdbsAggregationRepository
|
|||
|
документация https://help.talend.com/reader/Uc2IlRuFVfGrjaFPdRI7kA/fBdqK2kf6iIkLHQf9nLh6g
|
|||
|
|
|||
|
Есть некоторые внутренние баги karaf, которые не позволяют установить некоторые ignite фичи в караф
|
|||
|
https://github.com/apache/ignite/blob/fd921a233d35408883695419b6f9979ac674d1b9/modules/osgi-karaf/src/main/resources/features.xml#L87
|
|||
|
|
|||
|
В карафе поднимается ignite, с рабочей директорией, прописанной в ru.entaxy.esb.ignite.cfg,
|
|||
|
в параметре ignite.work.directory.path. Это место, где игнайт
|
|||
|
создает для себя все, что нужно, и будет хранить данные.
|
|||
|
|
|||
|
Ignite настроен с сохранением персисетнтности данных(сохранением их на диск) и
|
|||
|
созданием реплицации(бэкапов) на других узлах кластера.(при потере одной ноды,
|
|||
|
другие восстановят данные, которе хранились на текущем узле)
|
|||
|
|
|||
|
IGNITE_QUIET=false - параметр необходимый для того, чтобы игнайт не писал информацию о себе в лог,
|
|||
|
для того что бы параметр применился, необходимо выставить setGridLogger,
|
|||
|
смогла установить в караф только JclLogger.
|
|||
|
|
|||
|
**AggregationProcessor**
|
|||
|
|
|||
|
AggregationProcessor стандартный, не расчитан на работу в кластере из-за чего пришлось вытаскивать исходники
|
|||
|
и редактировать сам процессор.(AggregationProcessorWithRestoreTimeout)
|
|||
|
Т к теперь AggregationProcessor вызывается как bean, а не как стандартный камеловский процессор,
|
|||
|
то процесс старта и остановки происходит в отличном порядке.
|
|||
|
|
|||
|
Для работы к кластере:
|
|||
|
- добавлен механизм восстановления работы таймаутов на других нодах,
|
|||
|
- отредактирован механизм удаления сообщения из репозитория(возникало состояние гонки и появлялись дубликаты),
|
|||
|
- исправлен механизм продолжения работы с "застрявшими" сообщениями (recoverTask из таблицы _completed)
|
|||
|
- добавлен безопасный механизм забора сообщений из очереди(восстановление сообщения в очереди, если не пришло подтверждение)
|