Разработка и настройка

Сейчас сервер Matrix работает на CentOS apps-matrix. Он запускается в форме службы systemd matrix.service.

Для удобства установки новых версий сервера на apps-matrix создана папка /var/deploy/matrix-SERVER. Содержимое папки:

Файл Описание
matrix.jar Основной исполняемый файл сервера.
matrix.sh Запускаемый файл, подготавливающий окружение для работы сервера.
matrix.service Описание службы systemd.
update Файл для установки обновлённой версии.
install Файл для первичной установки службы.
log Скрипт для удобного доступа к логу сервера.
flow Скрипт для удобного доступа к живому логу сервера.

В общем случае, для установки новой версии необходимо заменить файл matrix.jar на новый и выполнить скрипт update. Этот скрипт:

  1. остановит службу,
  2. сделает копию предыдущего выполняемого файла,
  3. заменит выполняемый файл на новый и
  4. запустит службу.

Действие Команда Скрипт в папке deploy
Перезапуск службы sudo systemctl restart matrix
Просмотр лога sudo journalctl -e -u matrix.service ./log
Живой лог sudo journalctl --follow -u matrix.service ./flow

devel:/var/git/glance.matrix-SERVER.git

-Dspring.profiles.active=dev -Dlogfolder=~/projects/log/matrix

[13:10, 19.6.2018] Игорь Кириллов: Snapshot isolation transaction failed accessing database 'drawer' because snapshot isolation is not allowed in this database. Use ALTER DATABASE to allow snapshot isolation.

[13:39, 19.6.2018] Игорь Кириллов: Прописал для бд drawer флаги:

[13:39, 19.6.2018] Игорь Кириллов: ALTER DATABASE drawer SET ALLOW_SNAPSHOT_ISOLATION ON; ALTER DATABASE drawer SET READ_COMMITTED_SNAPSHOT ON;