Совместное использование сеанса между приложением Spring Boot и PHP с использованием Redis

У нас есть много страниц, которые уже работают на PHP (ядро) и требуют очень частых (и внезапных) изменений. Поэтому мы не хотели бы полностью переносить нашу кодовую базу на Java. Я пытался создать архитектуру, в которой мы могли бы иметь некоторую часть обработки бизнес-логики (которая требует более прочной основы) в Spring Boot, а остальная часть (особенно часть отчетности) оставалась в PHP.

Теперь для этого я хочу иметь возможность поделиться сессией между уже существующими PHP-приложениями и приложением, которое я сейчас пишу в Spring Boot. Я настроил это приложение для запуска с Spring Session с использованием Redis. Я не могу и не хочу использовать табличную реализацию для управления сеансами из-за ограниченного количества ресурсов на нашем сервере баз данных.

Моя конфигурация для использования Redis с Spring Spring Boot выглядит следующим образом:

spring.session.store-type=redis
spring.redis.host=localhost
spring.redis.password=#somepasswordhere
spring.redis.port=6379
server.servlet.session.timeout=20m
spring.session.redis.flush-mode=on_save
spring.session.redis.namespace=SPRING_SESSION

spring.redis.jedis.pool.max-active=8
spring.redis.jedis.pool.max-idle=8
spring.redis.jedis.pool.max-wait=-1
spring.redis.jedis.pool.min-idle=16
spring.redis.timeout=1s

Я также смог настроить PHP для использования сервера Redis в качестве хранилища данных для управления сессиями.

Я хотел бы знать, есть ли какой-нибудь способ, где у меня может быть общий сеанс для двух, то есть, где одно приложение в PHP может получить доступ к значениям (и другим его свойствам, таким как срок действия / валидность), установленным для сеанса другим приложением в Spring Boot и наоборот?

Кроме того, я знаю, что это было бы не по теме, но любые предложения по более эффективной конфигурации Redis также были бы оценены здесь для части Spring Session.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]