Vyhledávání na webu

Základní pojmy WildFly (JBoss Application Server).


V našich posledních dvou článcích jsme prošli instalací WildFly a následnou správou serveru pomocí GUI verze CLI. Dnes budeme diskutovat o základních konceptech nebo můžete říci termínech používaných v WildFly. Naše poslední publikované články si můžete projít na.

  1. WildFly – Nová vylepšená instalace aplikačního serveru JBoss
  2. Správa serveru WildFly (JBoss AS) pomocí GUI verze CLI

Ti, kteří již znají Jboss AS, si budou vědomi velké změny představené v Jboss AS 7.* a tedy i WildFly. Změnou byl modulární design, což znamená, že načte třídy potřebné aplikací namísto načtení všech tříd.

Níže jsou uvedeny některé základní pojmy používané v WildFly:

Režimy spouštění

Wildfly představili nové režimy spouštění. Má dva režimy operací, které řídí všechny operace serveru.

  1. Samostatný režim
  2. Režim domény

Oba tyto režimy jsou ovládány dvěma různými skripty poskytnutými v adresáři „bin“ instalace WildFly.

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

domain.sh
standalone.sh

Samostatný režim

V předchozí verzi Jboss AS 7.*, tj. Jboss Application Server 3, 4, 5< nebo 6, všechny spuštěné instance jboss mají svůj individuální proces. Každá instance bude mít svou vlastní administrátorskou konzoli a další funkce pro její ovládání.

Velmi podobným způsobem funguje samostatný režim. Samostatný server můžeme spustit pomocí skriptu „standalone.sh“ a předáním různých parametrů podle požadavků. Můžeme spustit tolik instancí, kolik chceme (všechny by měly být nakonfigurovány pro spuštění na různých portech).

Můžeme také vytvářet různé HA clustery, jako jsme to dělali s předchozí verzí, tj. 4, 5 nebo 6.

Spuštění WildFly v samostatném režimu

Přesuňte se do adresáře $JBOSS_HOME/bin a spusťte skript standalone.sh z terminálu, jak je znázorněno níže. Pokud neurčíme žádný parametr, pak se ve výchozím nastavení naváže na adresu zpětné smyčky a použije soubor standalone.xml.

[root@tecmint bin]# ./standalone.sh
Ukázkový výstup
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

Poznámka : Pomocí možnosti –b [IP] můžete spustit server s jinou IP a načíst jiný konfigurační soubor. -c [název konfiguračního souboru].

Režim domény

Toto je nový koncept, který byl představen v AS-7.* . S touto novou funkcí v WildFly-8 můžeme spravovat různé instance z jednoho místa. To nám skutečně pomáhá zmenšit se na jeden kontrolní bod namísto správy více samostatných serverů.

Všechny servery spravované doménou jsou známé jako členové domény. Všichni členové domény mohou sdílet stejnou konfiguraci/rozmístění. To je opravdu užitečné a užitečné pro prostředí clusterů.

V režimu Doména můžeme vytvořit skupinu serverů a poté do této skupiny přidat počet serverů. Díky tomu, co děláme na této skupině serverů, se vše replikuje na každý server ve skupinách serverů.

Spuštění WildFly v režimu domény

Přesuňte se do adresáře $JBOSS_HOME/bin a spusťte skript domain.sh z terminálu, jak je znázorněno níže.

[root@tecmint bin]# ./domain.sh
Ukázkový výstup
=========================================================================

  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

Další věc, kterou si všimnete rozdílu mezi počtem služeb, které byly spuštěny v samostatném (183 z 0f 232) a v režimu domény (207 z 255).

Dalším nejdůležitějším rozdílem mezi režimem Samostatný a Doména je spouštěcí příkaz používaný ve spouštěcím skriptu. V samostatném režimu je vstupním bodem „org.jboss.as.standalone“, zatímco v režimu domény je vstupním bodem „org.jboss.as.process-controller“. Níže je obrázek znázorňující logický vztah mezi různými procesy.

V režimu domény nejprve spustí řadič procesu a vytvoří nový proces nazvaný Hostitelský řadič. Tento proces Hostitelského řadiče bude zodpovědný za obsluhu více serverů v rámci různých skupin serverů. Dalším bodem, který je třeba si uvědomit, je, že každý server bude mít svůj vlastní proces JVM.

To je zatím vše! V našem nadcházejícím článku si ukážeme různé způsoby nasazení ve WildFly. Do té doby zůstaňte naladěni a ve spojení se společností Tecmint a nezapomeňte nám poskytnout svou cennou zpětnou vazbu v sekci komentářů níže.