Почему киррилица не отображается при получении данных из Redis кеша?

Spring Boot приложение использует Redis в качестве кеша.
В Redis засовываются строки в кирилллице, и забираются также в виде строк.

Однако при тестировании локально строки из кеша отображаются в кириллице корректно,
но при работе на сервере этиже строки появляются в виде знаков вопроса ("???"), т.е. кириллица не отображается. При этом, код один и тот же - и на локальной машине, и на Linux сервере. Разве что локально используется Redis server, а на сервере - Redis Sentinel.

За кодировку отвечает клиент, взаимодействующий с Redis - а это spring boot data redis, у которого под капотом Lettuce.

Так как же пофиксить отображение кириллицы?

Может быть работа с кодировкой зависит от локали системы, где развернуто приложение?
  • Вопрос задан
  • 148 просмотров
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
продвинутый чайник
За кодировку отвечает клиент, взаимодействующий с Redis - а это spring boot data redis, у которого под капотом Lettuce.

1. Проверьте в документации, не отвечает ли за кодировку строк некоторый параметр при соединении.
2. Попробуйте занести в ключ foo значение, содержащее кириллицу, а затем проверить хранимое содержимое при помощи клиента redis-cli. Если там хранится простая строка, а не какой-то особый формат, то будет видно корректно ли само значение.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы