Есть ли хорошие альтернативы Apache Ignite в качестве сетки данных в памяти, используемой вместе с Spring в качестве распределенного кэша?

У нас есть решение, которое использует предоставляемую Apache Ignite сетку данных в памяти в качестве распределенного кэша. Для новых проектов мы в конечном итоге использовали Spring, и поэтому мы хотели гомогенизировать нашу программную экосистему, а также использовать Spring для первого решения. Кроме того, мы не используем все возможности Ignite для оправдания его использования (обнаружение, кэширование).

Поскольку в настоящее время мы используем только ограниченное подмножество функций Ignite, мы в основном ищем решение для распределенного кэша на уровне приложений с самостоятельным управлением (аналогичное тому, которое предоставляет Ignite). Это означает, что выделенная инфраструктура кэширования, такая как Redis, Memcached и т. Д., - это не то, что нам нужно.

Я немного исследовал тему и обнаружил, что есть несколько возможных альтернатив, таких как:

  • Тайзгрид - Последнее обновление, кажется, было довольно давно, не уверен, что все еще активно поддерживается

  • Друид - Все еще высиживаю, и я также читал, что несколько выпусков новых выпусков не было таким уж редким

  • Hazelcast - кажется лучшим выбором, учитывая его зрелость и существование Spring Data Hazelcast, хотя я не уверен, какой уровень поддержки здесь.

У кого-нибудь есть опыт интеграции одной из вышеуказанных IMDG (кроме Ignite) с Spring Cache? Любые указатели в правильном направлении будут с благодарностью.

1 ответ

Решение

Hazelcast имеет официальную поддержку Spring Data Hazelcast, а также этот модуль имеет много пользователей, как и сейчас. Я также могу предложить вам взглянуть на ресурсы ниже:

Использование Hazelcast с данными Spring

Начало работы с микросервисами с использованием Hazelcast IMDG и Spring Boot

Вы можете использовать Redisson - Redis Java-клиент с функциями In-Memory Data Grid. Он также реализует поддержку Spring Data. Вот документация.

Другие вопросы по тегам