Вопрос или проблема
Является ли драйвер Cassandra Java 4.17 совместимым с JDK 21? Мы планируем мигрировать наши серверы на Java 21 и используем клиент Cassandra. Если это не поддерживается, это будет для нас неприемлемо.
Существует несколько смешанных сигналов с стороны поставщика. В разделе совместимости:
https://docs.datastax.com/en/developer/java-driver/4.17/index.html
указано, что драйвер требует Java 8 или выше.
Но на странице руководства по обновлению:
https://docs.datastax.com/en/developer/java-driver/4.17/upgrade_guide/index.html
у нас есть информация о том, что есть бета-поддержка для Java 17.
Я уже пробовал запускать драйвер Cassandra Java 4.17 с JDK 21, и он, похоже, работает. Но я хотел бы знать, безопасно ли использовать эту конфигурацию в производственной среде.
Ответ или решение
На данный момент драйвер Cassandra Java Driver версии 4.17 официально поддерживает Java 8 и выше, но информация о поддержке более новых версий JDK, таких как JDK 17 и 21, действительно вызывает определенные сомнения. В документе совместимости, который вы привели, указано, что драйвер поддерживает Java начиная с версии 8, что подразумевает возможность работы с более поздними версиями, включая JDK 21. Однако, наличие «бета»-поддержки только для Java 17 наводит на мысль о том, что полноценной поддержки для JDK 21 пока нет.
Вы упомянули, что у вас уже был опыт успешного запуска Cassandra Java Driver 4.17 на JDK 21, что, безусловно, обнадеживает. Однако, важно понимать, что запуск в тестовом окружении и использование в продакшене — это две принципиально разные ситуации. Отсутствие официальной поддержки может привести к неожиданным проблемам, связанным со стабильностью и совместимостью, особенно когда речь идет о критически важных приложениях.
Рекомендую вам рассмотреть следующие шаги для обеспечения надежности вашей системы:
-
Тестирование: Если вы рассматриваете переход на JDK 21, проведите исчерпывающее тестирование приложения с использованием драйвера Cassandra на этой версии Java. Убедитесь в том, что все ключевые функции вашего приложения работают как ожидается под нагрузкой.
-
Мониторинг: Если вы решите запустить приложение с JDK 21 в производственной среде, внимательно следите за производительностью и ошибками. Запланируйте внедрение метрик и логов, чтобы вовремя выявлять проблемы.
-
Обратитесь в поддержку: Если вы являетесь пользователем Datastax или другого поставщика, который предоставляет поддержку для Cassandra, не стесняйтесь напрямую задавать вопросов о совместимости с JDK 21. Возможно, они смогут предоставить дополнительную информацию или рекомендации.
-
План на случай отката: Всегда имейте план на случай, если новая версия JDK вызовет проблемы в производственной среде. Будьте готовы вернуться к более стабильной версии.
- Слежение за обновлениями: Следите за обновлениями от команды разработчиков драйвера. Они могут выпустить патчи или обновления для улучшения совместимости с более новыми версиями JDK.
Таким образом, несмотря на то, что в тестах драйвер работает под JDK 21, для использования в производственной среде необходимо учитывать возможные риски и готовиться к ним.