Conceptes bàsics de WildFly (Servidor d'aplicacions JBoss).


En els nostres dos últims articles, havíem passat per la instal·lació de WildFly i després hem gestionat el servidor mitjançant la versió GUI de CLI. Avui parlarem dels conceptes bàsics o podeu dir els termes utilitzats a WildFly. Podeu consultar els nostres últims articles publicats a.

  1. WildFly: una nova instal·lació millorada del servidor d'aplicacions JBoss
  2. Gestiona el servidor WildFly (JBoss AS) mitjançant la versió GUI de la CLI

Aquells que ja estiguin familiaritzats amb Jboss AS, seran conscients del gran canvi introduït a Jboss AS 7.* i, per tant, WildFly. El canvi va ser el disseny modular, vol dir que carregarà les classes necessàries per l'aplicació en lloc de carregar totes les classes.

A continuació es mostren alguns dels termes bàsics utilitzats a WildFly:

Modes d'arrencada

Wildfly ha introduït nous modes d'inici. Té dos modes d'operacions utilitzats són la gestió de totes les operacions del servidor.

  1. Mode autònom
  2. Mode de domini

Ambdós modes es gestionen amb els dos scripts diferents proporcionats al directori \bin de la instal·lació de WildFly.

 ll -m1 standalone.sh domain.sh

domain.sh
standalone.sh

A la versió anterior de Jboss AS 7.*, és a dir, Jboss Application Server 3, 4, 5 o 6, totes les instàncies jboss en execució tenen el seu procés individual. Cada instància tindrà la seva pròpia consola d'administració i altres funcions per controlar-la.

El mode autònom funciona de manera molt semblant. Podem llançar un servidor autònom mitjançant l'script \standalone.sh\ i passant diferents paràmetres segons els requisits. Podem llançar tantes instàncies com vulguem (totes haurien d'haver estat configurades per executar-se en diferents ports).

També podem formar diferents clústers HA com estàvem fent amb la versió anterior, és a dir, 4, 5 o 6.

Aneu al directori $JBOSS_HOME/bin i inicieu l'script standalone.sh des del terminal, tal com es mostra a continuació. Si no especifiquem cap paràmetre, de manera predeterminada s'enllaçarà a l'adreça de bucle i utilitzarà el fitxer standalone.xml.

 ./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

Nota: podeu utilitzar l'opció –b [IP] per iniciar el servidor amb una altra IP i per carregar algun altre fitxer de configuració, utilitzeu -c [nom del fitxer de configuració].

Aquest és un concepte nou que s'introdueix a AS-7.* . Amb aquesta nova funció de WildFly-8, podem gestionar diferents instàncies des d'un sol punt. Això realment ens ajuda a reduir-nos a un punt de control en lloc de gestionar diversos servidors autònoms.

Tots els servidors gestionats per Domini es coneixen com a membres de domini. Tots els membres del domini poden compartir la mateixa configuració/desplegaments. Això és molt útil i útil per a l'entorn de clúster.

En el mode de domini podem crear un grup de servidors i després afegir un nombre de servidors a aquest grup. Amb això, sigui el que fem en aquest grup de servidors, tot es replicarà a cada servidor dels grups de servidors.

Mou-te al directori $JBOSS_HOME/bin i llança l'script domain.sh des del terminal tal com es mostra a continuació.

 ./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

Una altra cosa que notareu la diferència entre el nombre de serveis que es van iniciar en autònom (183 de 0f 232) i el mode de domini (207 de 255).

Una altra diferència més important entre el mode autònom i el mode de domini és l'ordre d'inici que s'utilitza a l'script d'inici. En mode de domini, el punt d'entrada és \org.jboss.as.process-controller. A continuació es mostra la figura que mostra la relació lògica entre diferents processos.

En mode de domini, primer iniciarà el controlador de processos i generarà un procés nou anomenat Host Controller. Aquest procés del controlador d'amfitrió serà responsable de gestionar diversos servidors dins de diferents grups de servidors. Un altre punt que cal tenir en compte que cada servidor tindrà el seu propi procés JVM.

Això és tot per ara! En el nostre proper article mostrarem diferents maneres de fer desplegaments a WildFly. Fins a continuació, estigueu atents i connectats a Tecmint i no oblideu donar els vostres valuosos comentaris a la nostra secció de comentaris a continuació.