Перейти к основному содержимому
Version: 4.x

Параметры запуска

Сервер приложений (Server)

Java

Java параметры запуска сервера приложений задаются в его команде запуска (например для ручной или автоматической установки):

НазваниеТипОписаниеПо умолчанию
Системные (начинаются на X)СтандартныеСтандартные Java параметры. Прежде всего важно обратить внимание на:
  • cp - classpath, пути в которых java ищет class файлы и другие ресурсы (в том числе lsFusion модули). По умолчанию равен . - текущая папка (при автоматической установке отличается).
  • Xmx - максимальный размер памяти. Значение по умолчанию определяется в зависимости от конфигурации компьютера, на котором запускается сервер приложений. Для сложных логик рекомендуется устанавливать не менее 4ГБ.
-XX:CMSInitiatingOccupancyFractionintВообще это стандартный параметр, отвечающий за порог, после которого включается CMS сборщик мусора. В то же время платформа использует этот параметр для таргетирования объема используемой памяти при помощи LRU кэшей (устанавливая более агрессивные параметры их очистки, если эта цель превышена, и менее агрессивные - в обратном случае). Для высоконагруженных серверов рекомендуется устанавливать в диапазоне от 40 до 60.70
Пользовательские (начинаются на D)-Dlsfusion.server.lightstartbooleanРежим "облегченного" запуска (как правило используется при разработке). В этом режиме сервер не выполняет операции синхронизации метаданных, создания форм настройки политики безопасности и т.п., соответственно уменьшается время запуска и объем потребляемой памяти при запуске.
В IDE регулируется галочкой в lsFusion server конфигурации (по умолчанию включена).
false
-Dlsfusion.server.devmodebooleanРежим разработки. В этом режиме:
  • Не запускаются системные задачи (чтобы не мешать отладчику)
  • Включается возможность редактирования дизайна отчетов в интерактивном печатном представлении
  • Включается анонимный доступ к API и UI (системные параметры enableAPI, enableUI). Кроме того в этом режиме анонимный доступ идет под админом, а не анонимным пользователем
  • Клиент автоматически переподключается при потере связи
  • Выключается кэш чтения отчетов из ресурсов
В IDE автоматически включается при запуске lsFusion server конфигурации.
false
-Dlsfusion.server.testmodebooleanВключает некоторые экспериментальные возможности
Автоматически включается, если включены assertion'ы (опция -ea)
false

lsFusion

lsFusion параметры запуска сервера приложений могут задаваться одним из следующих способов (в порядке их приоритетов, снизу более приоритетные) :

  • В ресурсах в xml-файле lsfusion.xml в местах использования этих параметров, после: (актуально для форков платформы)
  • В lsfusion.properties (обычно являются частью проекта, а значит действует по умолчанию для всех инсталляций)
  • В conf/settings.properties (для конкретных инсталляций)
  • В Java параметрах запуска (начиная с D, например -Dlogics.topModule=FFF)
НазваниеТипОписаниеПо умолчанию
db.server, db.name, db.user, db.password, db.connectTimeoutstring, string, string, string, intПараметры подключения к серверу БД (базы данных):
  • db.server - адрес сервера БД (плюс при необходимости порт через:, например localhost:6532)
  • db.name - имя БД
  • db.user - имя пользователя для подключения к серверу БД
  • db.password - пароль пользователя для подключения к серверу БД
  • db.connectTimeout - таймаут подключения к СУБД
localhost, lsfusion, postgres, , 1000
rmi.port, rmi.exportName, http.portint, string, intПараметры доступа к серверу приложений:
  • rmi.port - порт сервера приложений (экспортируемых им RMI регистра / объектов)
  • rmi.exportName - имя сервера приложений (экспортируемого им корневого RMI объекта). Имеет смысл использовать, если на одном порту необходимо экспортировать несколько логик
  • http.port - порт веб-сервера встроенного в сервер приложений (используется для обращения из внешних систем)
7652, default, 7651
logics.includePaths, logics.excludePaths, logics.topModule, logics.orderDependenciesstring, string, string, stringПараметры проекта (какие модули загружать и в каком порядке, подробное описание по ссылке)logics.includePaths равен *, остальные - пустые
user.country, user.language, user.timezone, user.twoDigitYearStart (user.setCountry, user.setLanguage, user.setTimezone)string, string, string, intСтандартные Java параметры, определяющие параметры локали (региональные настройки - язык, страна и т.п., подробное описание по ссылке)
Из-за особенностей Java Spring (а именно, что параметры локали считаются Java Spring заданными, даже если они явно не заданы в команде запуска, то есть настройки этих параметров в .properties файлах игнорируются), в платформе поддерживаются "клоны" этих параметров начинающиеся на set, которые, в случае если заданы (как в .properties файлах так и в строке запуска), "перегружают" родные параметры. То есть приоритет такой ОС, -Duser.*, user.set* в .properties файлах, -Duser.set* (все вышесказанное не касается user.twoDigitYearStart, так как он не является стандартным Java параметром)
Первые три определяются из настроек операционной системы, Текущий год минус 80
db.namingPolicy, db.maxIdLengthstring, intПараметры политики именования таблиц и полей:db.namingPolicy - имя java-класса политики (полное, с package'м), в конструкторе должен принимать один параметр типа int - максимальный размер имени.Имена классов встроенных политик:
  • Полное с сигнатурой - lsfusion.server.physics.dev.id.name.FullDBNamingPolicy
  • Полное без сигнатуры - lsfusion.server.physics.dev.id.name.NamespaceDBNamingPolicy
  • Краткое - lsfusion.server.physics.dev.id.name.ShortDBNamingPolicy
db.maxIdLength - максимальный размер имени таблицы или поля. Передается первым параметром в конструктор java-класса политики именования таблиц и полей.
Полное с сигнатурой, 63
db.denyDropModules, db.denyDropTablesboolean, booleanЗапреты на удаления при запуске:
  • db.denyDropModules - модулей
  • db.denyDropTables - таблиц
false, false
logics.initialAdminPasswordstringПароль администратора по умолчанию

Пример файла conf/settings.properties (3-й пункт):

$FUSION_DIR$/conf/settings.properties

db.server=localhost
db.name=lsfusion
db.user=postgres
db.password=pswrd

rmi.port=7652
info

По умолчанию предполагается, что файлы параметров запуска conf/settings.properties и lsfusion.properties находятся в папке запуска сервера приложений. Впрочем при автоматической установке под Linux для этих файлов (как и для папок логов) автоматически создаются symlink'и на другие файлы, расположение которых лучше соответствует идеологии Linux.

Веб-сервер (Client)

Java

Java параметры запуска веб-сервера задаются в команде запуска Tomcat, на котором, в свою очередь, запускается этот веб-сервер (например для автоматической установки).

НазваниеТипОписание
Системные (начинаются на X)СтандартныеСтандартные Java параметры. Прежде всего важно обратить внимание на:
  • Xmx - максимальный размер памяти. Для сложных логик рекомендуется устанавливать не менее 2ГБ.

lsFusion

lsFusion параметры запуска веб-сервера могут задаваться одним из следующих способов (в порядке их приоритетов, снизу более приоритетные):

  • В параметрах контекста веб-приложения:
    • в веб-приложении в файле /WEB-INF/web.xml, тег context-param (актуально для форков платформы)
    • в веб-приложении в файле /META-INF/context.xml, тег Context, тег Parameter (актуально для форков платформы)
    • в Tomcat в файле $CATALINA_BASE/conf/[enginename]/[hostname]/[contextpath].xml, тег Context, тег Parameter, где:
      • $CATALINA_BASE$ - папка, в которую установлен Tomcat (например, в автоматической установке, эта папка равна $INSTALL_DIR/Client)
      • [contextpath] - контекстный путь веб-приложения (например, в автоматической установке, по умолчанию это имя пустое, что в Tomcat'е эквивалентно имени ROOT, в ручной - зависит от имени war-файла),
      • [enginename] и [hostname] - имена механизма реализации tomcat и компьютера веб-сервера (например в автоматической установке, эти имена равны catalina и localhost соответственно)
    • в Tomcat в файле $CATALINA_BASE/conf/server.xml, тег Context, тег Parameter (не рекомендуется)
  • В параметрах URL'а (например http://tryonline.lsfusion.org?host=3.3.3.3&port=4444)
НазваниеТипОписаниеПо умолчанию
host, port, exportNamestring, int, stringПараметры подключения к серверу приложений. Должны соответствовать параметрам доступа к серверу приложений.
  • host - адрес сервера приложений
  • port - порт сервера приложений. Должен соответствовать параметру - rmi.port
  • exportName - имя сервера приложений. Должен соответствовать параметру - rmi.exportName
localhost, 7652, default

Пример файла настройки Tomcat (3-й пункт в параметрах контекста):

$CATALINA_BASE/conf/[enginename]/[hostname]/ROOT.xml

<?xml version='1.0' encoding='utf-8'?>
<Context>
<Parameter name="host" value="localhost" override="false"/>
<Parameter name="port" value="7652" override="false"/>
</Context>
info

Помимо параметров запуска, в платформе также существуют системные параметры, которые задаются немного по другому и актуальны преимущественно для процессов работы различных компонент платформы (то есть процессов, происходящих после их запуска).