Подключение Tarantool/Redis к приложению Бюджет-NEXT
Действия выполняются на сервере приложения Бюджет-NEXT.
Бюджет-NEXT развернут на Linux сервере
1. Получите root-права.
Наберите команду и введите пароль от пользователя root.
sudo su
2. Откройте файл конфигурации appsettings.Production.json.
В данном примере:
- Контейнер wsks-6.0.9_443,
- Каталог приложения wsks_54430, где 54430 - порт kestrel.
mcedit /opt/wsks-6.0.9_443/www/html/wsks_54430/appsettings.Production.json
3. Найдите ключ подключения к NoSQL-кэшу.
Поскольку при развёртывании приложения используется шаблон appsettings.Production.json, в конфигурационном файле уже содержится строка подключения к NoSQL-кэшу и настройку хранения сессионных данных.
В секции «SystemSettings» найдите ключи подключения «NoSqlCache» и «SessionStorage».
"SystemSettings": {
...
"NoSqlCache": "memory",
"SessionStorage" : "sql"
...
}
4. Закомментируйте ключ «NoSqlCache».
Закомментируйте ключ "NoSqlCache", добавив суффикс «_disable» к наименованию ключа.
"SystemSettings": {
...
"NoSqlCache": "memory",
"NoSqlCache_disable": "memory",
"SessionStorage" : "sql",
...
}
5. Добавьте подключение к NoSQL кэшу (Tarantool/Redis).
В файле уже содержатся ключи для подключения к NoSQL кэшу в виде двух комментариев: «NoSqlCache_example_Redis» и «NoSqlCache_example_Tarantool».
В зависимости от типа ранее развернутого NoSQL-сервера (tarantool/redis) выберите соответствующий пример заполнения строки подключения.
Если вы используете старый контейнер, пример подключения закомментирован при помощи «//».
Tarantool
Выберите ключ "NoSqlCache_example_Tarantool", удалите суффикс «_example_Tarantool» и настройте параметры для подключения к базе данных tarantool.
"SystemSettings": {
...
"NoSqlCache_disable": "memory",
"NoSqlCache_example_Tarantool": "tarantool: user:@127.0.0.1:3301",
"NoSqlCache": "tarantool: admin:1@10.38.46.144:3301",
"SessionStorage" : "sql",
...
}
Redis
Выберите ключ "NoSqlCache_example_Redis", удалите суффикс «_example_Redis» и настройте параметры для подключения к базе данных redis.
"SystemSettings": {
...
"NoSqlCache_disable": "memory",
"NoSqlCache_example_Redis": "redis: 127.0.0.1:6379, user=user, password=",
"NoSqlCache": "redis: 10.38.46.144:6379, user=admin, password=1",
"SessionStorage" : "sql",
...
}
6. Измените настройку хранения сессионных данных «SessionStorage».
Найдите ключ подключения "SessionStorage": "sql", и измените значение ключа на nosql
.
"SystemSettings": {
...
"NoSqlCache_disable": "memory",
"NoSqlCache": "redis: 10.38.46.144:6379, user=admin, password=1",
"SessionStorage" : "sql",
"SessionStorage" : "nosql",
...
}
7. Настройте очистку базы данных Redis.
Выполните данный пункт, если вы подключили Redis.
Обязательно настройте очистку БД Redis в планировщике ОС.
Файл с логом будет расположен по пути:
/opt/nosqlks-2.0.1_6379/redis/log/flushall.log
7.1. Выполните следующие команды:
Измените редактор на mcedit.
export EDITOR=mcedit
Откройте планировщик cron.
crontab -e
7.2. Добавьте строку:
#минута час день месяц день_недели root /путь/к/исполняемому/файлу
00 01 * * * echo -e "\n$(date)" >> /opt/nosqlks-2.0.1_6379/redis/log/flushall.log && docker exec nosqlks-2.0.1_6379
Выполните команду по созданию файла flushall.log
:
bash -c "redis-cli -a Rds2024\!+ flushall async" >> /opt/nosqlks-2.0.1_6379/redis/log/flushall.log 2>&1
8. Сохраните изменения и перезапустите контейнер Web-Сервер-КС.
systemctl restart wsks-6.0.9_443
Альтернативно, можно перезапустить только само приложение с помощью команды:
bash /opt/wsks-6.0.9_443/ctl/ws_ctlapp.sh -p "54430" -m "restart"
После завершения всех необходимых действий вы можете проверить корректность подключения к NoSQL кэшу, обратившись к разделу «О программе» внутри комплекса.
- Выполните вход.
- Меню -> О программе.
- NoSql кэш: tarantool/redis
Хранилище сессий :nosql.
Бюджет-NEXT развернут на Windows сервере.
1. Откройте файл конфигурации appsettings.Production.json.
2. Найдите ключ подключения к NoSQL-кэшу.
3. Закомментируйте ключ.
Закомментируйте ключ, добавив суффикс «_disable» к наименованию ключа.
"SystemSettings": {
...
"NoSqlCache": "memory",
"NoSqlCache_disable": "memory",
"SessionStorage" : "sql"
}
4. Добавьте подключение к NoSQL кэшу (Tarantool/Redis).
В зависимости от типа ранее развернутого NoSQL-сервера (tarantool/redis) выберите соответствующий пример заполнения строки подключения.
Tarantool
Добавьте строку, приведенную ниже и настройте параметры для подключения к базе данных tarantool.
"SystemSettings": {
...
"NoSqlCache_disable": "memory",
"NoSqlCache": "tarantool: admin:1@10.38.46.144:3301",
"SessionStorage" : "sql"
}
Redis
Добавьте строку, приведенную ниже и настройте параметры для подключения к базе данных redis.
"SystemSettings": {
...
"NoSqlCache_disable": "memory",
"NoSqlCache": "redis: 10.38.46.144:6379, user=admin, password=1",
"SessionStorage" : "sql"
}
5. Измените настройку хранения сессионных данных "SessionStorage".
Найдите ключ подключения "SessionStorage": "sql", и измените значение ключа на nosql
.
"SystemSettings": {
...
"NoSqlCache_disable": "memory",
"NoSqlCache": "redis: 10.38.46.144:6379, user=admin, password=1",
"SessionStorage" : "sql"
"SessionStorage" : "nosql"
}
6. Сохраните изменения и перезапустите приложение и/или пул.
После завершения всех необходимых действий вы можете проверить корректность подключения к базе данных кэша PostgreSQL, обратившись к разделу «О программе» внутри комплекса.
- Выполните вход.
- Меню -> О программе.
- NoSql кэш: tarantool/redis
Хранилище сессий :nosql.