WildFly (JBoss Application Server) Grundlæggende koncepter


I vores to sidste artikler havde vi gennemgået WildFly Installation og derefter administrere serveren ved hjælp af GUI-versionen af CLI. I dag diskuterer vi om de grundlæggende begreber, eller du kan sige udtryk, der bruges i WildFly. Du kan gennemgå vores sidst offentliggjorte artikler på.

  1. WildFly - En ny forbedret installation af JBoss-applikationsserver
  2. Administrer WildFly (JBoss AS) -server ved hjælp af GUI-versionen af CLI

De, der allerede er fortrolige med Jboss AS, vil være opmærksomme på den store ændring, der blev introduceret til Jboss AS 7. * og dermed WildFly. Ændringen var det modulære design, hvilket betyder, at det vil indlæse de klasser, der kræves af applikationen, i stedet for at indlæse alle klasser.

Nedenfor er nogle af de grundlæggende udtryk, der bruges i WildFly:

Opstarttilstande

Wildfly har introduceret nye starttilstande. Den har to anvendte tilstande, der administrerer alle serveroperationer.

  1. Standalone Mode
  2. Domænetilstand

Begge disse tilstande håndteres af de to forskellige scripts, der findes i "bin" -mappen til WildFly-installationen.

 ll -m1 standalone.sh domain.sh

domain.sh
standalone.sh

I tidligere version af Jboss AS 7. * dvs. Jboss Application Server 3, 4, 5 eller 6, har alle kørende jboss-instanser deres individuelle proces. Hver instans har sin egen admin-konsol og andre funktioner til styring af den samme.

På meget lignende måde fungerer den enkeltstående tilstand. Vi kan starte standalone server ved hjælp af "standalone.sh" script og videregive forskellige parametre efter kravene. Vi kan starte så mange forekomster, som vi vil (alle skulle have været konfigureret til at køre på forskellige porte).

Vi kan også danne forskellige HA-klynger, som vi gjorde med den tidligere version, dvs. 4, 5 eller 6.

Flyt til $ JBOSS_HOME/bin-biblioteket, og start standalone.sh script fra terminal som vist nedenfor. Hvis vi ikke angiver nogen parameter, bliver den som standard bundet til loopback-adresse og bruger standalone.xml-filen.

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

Bemærk: Du kan bruge –b [IP] -muligheden til at starte serveren med en anden IP og til at indlæse en anden konfigurationsfil ved hjælp af -c [konfigurationsfilnavn].

Dette er et nyt koncept, der introduceres i AS-7. *. Med denne nye funktion i WildFly-8 kan vi styre forskellige forekomster fra et enkelt punkt. Dette hjælper os virkelig med at krympe ned til et kontrolpunkt i stedet for at administrere flere enkeltstående servere.

Alle servere, der administreres af Domain, er kendt som medlemmer af domæne. Alle medlemmer af domænet kan dele samme konfiguration/implementeringer. Dette er virkelig praktisk og nyttigt til klyngemiljø.

I domænetilstand kan vi oprette en servergruppe og derefter tilføje antal servere til den gruppe. Med dette uanset hvad vi gør på denne servergruppe, bliver alt replikeret til hver server i servergrupper.

Flyt til $ JBOSS_HOME/bin-biblioteket, og start domain.sh-script fra terminal som vist nedenfor.

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

En anden ting, at du vil bemærke forskellen mellem antallet af tjenester, der kom i gang i standalone (183 ud 0f 232) og domænetilstand (207 ud af 255).

En anden meget vigtig forskel mellem standalone og domænetilstand er startkommando, der bruges i opstarts script. I standalone er indgangspunktet "org.jboss.as.standalone", mens indgangspunkt i domænetilstand er "org.jboss.as.process-controller". Nedenfor er figuren, der viser det logiske forhold mellem forskellige processer.

I domænetilstand starter den først procescontroller, og den skaber en ny proces kaldet Host Controller. Denne Host Controller-proces er ansvarlig for håndtering af flere servere inden for forskellige servergrupper. Et andet punkt, der skal bemærkes, at hver server vil have sin egen JVM-proces.

Det er alt det nu! I vores kommende artikel vil vi vise forskellige måder at udføre implementeringer i WildFly på. Indtil så hold dig opdateret og forbundet til Tecmint, og glem ikke at give din værdifulde feedback i vores kommentarsektion nedenfor.