Поиск по сайту:

WildFly (сервер приложений JBoss) Основные понятия


В наших последних двух статьях мы рассмотрели установку WildFly, а затем управление сервером с помощью версии GUI CLI. Сегодня мы обсудим основные понятия или, можно сказать, термины, используемые в WildFly. Вы можете просмотреть наши последние опубликованные статьи на сайте.

  1. WildFly — новая улучшенная установка сервера приложений JBoss
  2. Управление сервером WildFly (JBoss AS) с помощью версии CLI с графическим интерфейсом

Те, кто уже знаком с Jboss AS, знают о больших изменениях, внесенных в Jboss AS 7.* и, следовательно, в WildFly. Изменение заключалось в модульной конструкции, что означает загрузку классов, необходимых приложению, а не всех классов.

Ниже приведены некоторые основные термины, используемые в WildFly:

Режимы запуска

Wildfly представила новые режимы запуска. Он имеет два режима работы, которые управляют всеми операциями сервера.

  1. Автономный режим
  2. Режим домена

Оба этих режима обрабатываются двумя разными сценариями, расположенными в каталоге «bin» установки WildFly.

[root@tecmint bin]# ll -m1 standalone.sh domain.sh

domain.sh
standalone.sh

Автономный режим

В предыдущей версии Jboss AS 7.*, т. е. Приложение Jboss Сервер 3, 4, 5< или 6, каждый запущенный экземпляр jboss имеет свой отдельный процесс. Каждый экземпляр будет иметь собственную консоль администратора и другие функции для управления ею.

Аналогично работает автономный режим. Мы можем запустить автономный сервер, используя скрипт «standalone.sh» и передав различные параметры в соответствии с требованиями. Мы можем запустить столько экземпляров, сколько захотим (все они должны быть настроены для запуска на разных портах).

Мы также можем формировать разные кластеры HA, как мы это делали в более ранней версии, т. е. 4, 5 или 6.

Запуск WildFly в автономном режиме

Перейдите в каталог $JBOSS_HOME/bin и запустите скрипт standalone.sh из терминала, как показано ниже. Если мы не укажем какой-либо параметр, то по умолчанию он будет привязан к адресу обратной связи и будет использовать файл standalone.xml.

[root@tecmint bin]# ./standalone.sh
Пример вывода
tecmint-VGN-Z13GN bin # ./standalone.sh
=========================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: "/data/wildfly-8.0.0.Final"

  JAVA: java

  JAVA_OPTS:  -server -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true

=========================================================================

13:25:22,168 INFO  [org.jboss.modules] (main) JBoss Modules version 1.3.0.Final
13:25:22,717 INFO  [org.jboss.msc] (main) JBoss MSC version 1.2.0.Final
13:25:22,818 INFO  [org.jboss.as] (MSC service thread 1-3) JBAS015899: WildFly 8.0.0.Final "WildFly" starting
13:25:24,287 INFO  [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
13:25:24,310 INFO  [org.xnio] (MSC service thread 1-1) XNIO version 3.2.0.Final
13:25:24,332 INFO  [org.xnio.nio] (MSC service thread 1-1) XNIO NIO Implementation Version 3.2.0.Final
13:25:24,486 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 33) JBAS010280: Activating Infinispan subsystem.
13:25:24,491 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 28) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
13:25:24,514 INFO  [org.jboss.remoting] (MSC service thread 1-1) JBoss Remoting version 4.0.0.Final
13:25:24,573 INFO  [org.jboss.as.jsf] (ServerService Thread Pool -- 39) JBAS012615: Activated the following JSF Implementations: [main]
13:25:24,575 INFO  [org.jboss.as.connector.logging] (MSC service thread 1-3) JBAS010408: Starting JCA Subsystem (IronJacamar 1.1.3.Final)
13:25:24,587 INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-3) JBAS010417: Started Driver service with driver-name = h2
13:25:24,622 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 41) JBAS011800: Activating Naming Subsystem
13:25:24,691 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 46) JBAS013171: Activating Security Subsystem
13:25:24,707 INFO  [org.jboss.as.naming] (MSC service thread 1-4) JBAS011802: Starting Naming Service
13:25:24,708 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-3) JBAS015400: Bound mail session [java:jboss/mail/Default]
13:25:24,737 INFO  [org.jboss.as.security] (MSC service thread 1-1) JBAS013170: Current PicketBox version=4.0.20.Final
13:25:24,754 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 50) JBAS015537: Activating WebServices Extension
13:25:24,800 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS017502: Undertow 1.0.0.Final starting
13:25:24,800 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 49) JBAS017502: Undertow 1.0.0.Final starting

Примечание. Вы можете использовать опцию –b [IP], чтобы запустить сервер с другим IP-адресом и загрузить другой файл конфигурации, используя -c [имя файла конфигурации].

Режим домена

Это новая концепция, представленная в AS-7.* . Благодаря этой новой функции в WildFly-8 мы можем управлять разными экземплярами из одной точки. Это действительно помогает нам сократиться до одной точки управления вместо управления несколькими автономными серверами.

Все серверы, управляемые доменом, называются членами домена. Все члены домена могут использовать одну и ту же конфигурацию/развертывание. Это действительно удобно и полезно для среды кластеризации.

В режиме домена мы можем создать группу серверов, а затем добавить в эту группу несколько серверов. При этом, что бы мы ни делали в этой группе серверов, все будет реплицироваться на каждый сервер в группах серверов.

Запуск WildFly в режиме домена

Перейдите в каталог $JBOSS_HOME/bin и запустите скрипт domain.sh с терминала, как показано ниже.

[root@tecmint bin]# ./domain.sh
Пример вывода
=========================================================================

  JBoss Bootstrap Environment

 JBOSS_HOME: "/data/wildfly-8.0.0.Final"

  JAVA: java

  JAVA_OPTS: -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true

=========================================================================

13:30:33,939 INFO  [org.jboss.modules] (main) JBoss Modules version 1.3.0.Final
13:30:34,077 INFO  [org.jboss.as.process.Host Controller.status] (main) JBAS012017: Starting process 'Host Controller'
[Host Controller] 13:30:34,772 INFO  [org.jboss.modules] (main) JBoss Modules version 1.3.0.Final
[Host Controller] 13:30:34,943 INFO  [org.jboss.msc] (main) JBoss MSC version 1.2.0.Final
[Host Controller] 13:30:34,999 INFO  [org.jboss.as] (MSC service thread 1-4) JBAS015899: WildFly 8.0.0.Final "WildFly" starting
[Host Controller] 13:30:35,689 INFO  [org.xnio] (MSC service thread 1-1) XNIO version 3.2.0.Final
[Host Controller] 13:30:35,692 INFO  [org.jboss.as] (Controller Boot Thread) JBAS010902: Creating http management service using network interface (management) port (9990) securePort (-1)
[Host Controller] 13:30:35,701 INFO  [org.xnio.nio] (MSC service thread 1-1) XNIO NIO Implementation Version 3.2.0.Final
[Host Controller] 13:30:35,747 INFO  [org.jboss.remoting] (MSC service thread 1-1) JBoss Remoting version 4.0.0.Final
[Host Controller] 13:30:35,817 INFO  [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on 127.0.0.1:9999
^C13:30:36,415 INFO  [org.jboss.as.process] (Shutdown thread) JBAS012016: Shutting down process controller
13:30:36,416 INFO  [org.jboss.as.process.Host Controller.status] (Shutdown thread) JBAS012018: Stopping process 'Host Controller'
[Host Controller] 13:30:36,456 INFO  [org.jboss.as] (MSC service thread 1-2) JBAS015950: WildFly 8.0.0.Final "WildFly" stopped in 19ms
[Host Controller] 
13:30:36,476 INFO  [org.jboss.as.process.Host Controller.status] (reaper for Host Controller) JBAS012010: Process 'Host Controller' finished with an exit status of 130
13:30:36,476 INFO  [org.jboss.as.process] (Shutdown thread) JBAS012015: All processes finished; exiting

Еще вы заметите разницу между количеством служб, запущенных в автономном режиме (183 из 0f 232) и доменном режиме (207). из 255).

Еще одним наиболее важным различием между режимом Автономный и Домен является команда запуска, используемая в сценарии запуска. В автономном режиме точка входа — «org.jboss.as.standalone», тогда как в режиме домена точка входа — «org.jboss.as.process-controller». Ниже приведен рисунок, показывающий логическую взаимосвязь между различными процессами.

В режиме домена сначала запускается контроллер процесса, а затем новый процесс под названием Хост-контроллер. Этот процесс Хост-контроллер будет отвечать за обработку нескольких серверов в разных группах серверов. Еще один момент, на который следует обратить внимание: каждый сервер будет иметь свой собственный процесс JVM.

На данный момент это все! В нашей следующей статье мы покажем различные способы развертывания в WildFly. До тех пор, тогда следите за обновлениями и оставайтесь на связи с Tecmint и не забудьте оставить свой ценный отзыв в нашем разделе комментариев ниже.