WildFly 8 - Usa ka Bag-ong Gipauswag nga JBoss Application Server alang sa Linux


Sama sa nahibal-an natong tanan nga ang JBoss AS giilisan sa ngalan sa WildFly. Daghang mga bag-ong bahin ang gidugang ug daghan ang na-upgrade. Sa kataposan ang WildFly 8.0.0 Final kay gipagawas sa Feb 11.2014. Ang WildFly Project Lead nga si Jason Greene nagpahibalo sa parehas.

Ang WildFly 8 mao ang Red Hat's Java EE 7 nga nagsunod sa open source application server. Ang Panguna nga mga bahin mao ang sa ubos:

Ang pinakadako nga pagbag-o niini mao nga karon ang WildFly 8 opisyal nga Java EE7 Certified.

Ang Undertow usa ka bag-ong high-performance nga web server nga gisulat sa Java. Karon kini gipatuman sa WildFly 8. Gidisenyo gayud kini alang sa taas nga throughput ug scalability ug makadumala sa minilyon nga koneksyon. Ang siklo sa kinabuhi ni Undertow hingpit nga gikontrol sa aplikasyon sa pag-embed. Kini hilabihan ka gaan sa kinauyokan nga garapon nga adunay gidak-on nga 1MB ug naka-embed nga server gamit ang ubos sa 4MB nga heap space. Nindot gyud ni.

Tungod kay kini naggamit sa Undertow nga nagsuporta sa Pag-upgrade sa HTTP, nga magtugot sa daghang mga protocol nga ma-multiplex sa usa ka HTTP port. Gibalhin sa WildFly 8 ang hapit tanan nga mga protocol niini aron ma-multiplex sa duha ka mga pantalan sa HTTP: ang usa mao ang pagdumala ug ang usa mao ang pantalan sa aplikasyon. Kini usa ka dako nga pagbag-o ug kaayohan sa mga cloud providers (sama sa OpenShift) nga nagpadagan sa gatusan ngadto sa liboan ka mga higayon sa usa ka server. Sa kinatibuk-an, kini adunay duha ka default nga mga pantalan alang sa pag-configure ug kini mao ang 9990 (Web Administration Console) ug 8080 (Application Console).

Kini ang bag-o ug makaiikag nga butang nga gipatuman sa WildFly 8. Pinaagi sa paggamit niini makahimo kita og lain-laing mga tiggamit ug maka-assign niadtong usa sa lain-laing mga tahas sumala sa gikinahanglan. Ipakita ko nimo sa ulahi gamit ang mga screen shot.

Gisuportahan na karon sa management API ang abilidad sa paglista ug pagtan-aw sa mga available nga log files sa usa ka server. Karon, aduna na kitay attribute nga gitawag og \add-logging-api-dependencies nga magamit para sa bisan unsang matang sa mga deployment diin gusto namong laktawan ang container logging. Kini mag-disable sa pagdugang sa implicit server logging dependencies. Naa mi laing opsyon ie. gamita ang jboss-deployment-structure.xml para dili iapil ang logging subsystem. Gamit kini, makatabang kini sa pagpahunong sa logging subsystem gikan sa pag-agi sa bisan unsang deployment.

Mahimo usab namo gamiton ang laing parameter ie use-deployment-logging-config para sa pagpagana/pag-disable sa pagproseso sa logging configuration files sulod sa usa ka deployment.

Mubo nga sulat: Ang System Property nga among gigamit para sa pag-disable kada logging wala na gamita niini nga bersyon.

Pag-usab Dako nga kausaban mao ang usa ka clustering. Ang tanan nga Mga Feature nga may kalabutan sa suporta sa Clustering giusab sa WildFly 8 ug kini naglakip sa ubos:

  1. Ang giapod-apod nga sesyon sa web na-optimize para niini gamit ang bag-ong Java Based Web Server ie Undertow.
  2. mod_cluster nga suporta para sa Undertow.
  3. Optimized Distributed SSO(Single Sign-On) nga kapabilidad ug suporta para sa Undertow.
  4. Bag-o/optimized-apod-apod @Stateful EJB caching pagpatuman.
  5. Ang WildFly 8 midugang ug pipila ka bag-ong public clustering API.
  6. Alang sa paghimo og singleton nga mga serbisyo naghatag kini og bag-ong publikong mga API.

Ang CLI Configuration gipauswag usab. Nahibal-an nimo Ang tanan nga admin ganahan nga magtrabaho sa CLI;). Busa, karon makahimo na kita og alyas alang sa partikular nga server ug dayon magamit kana nga alyas bisan kanus-a gusto nga makonektar sa maong server gamit ang connect command.

Adunay daghan pa nga mga pagpaayo ug mga update nga gihimo sa WildFly 8. Mahimo nimong susihon kining tanan sa:

  1. http://wildfly.org/news/2014/02/11/WildFly8-Final-Released/

Pag-instalar sa WildFly 8 sa Linux

Sa dili pa ipadayon ang Pag-install siguruha nga na-install nimo ang Java EE 7 sa imong sistema. Ang WildFly 8 dili molihok sa nangaging mga rebisyon. Palihug sunda ang ubos nga giya aron ma-install ang Java EE 7 sa mga sistema sa Linux.

  1. I-install ang JDK/JRE 7u25 sa Linux

Gamita ang mosunod nga link aron ma-download ang pinakabag-o nga WildFly zip file.

  1. http://download.jboss.org/wildfly/8.0.0.Final/wildfly-8.0.0.Final.zip

Mahimo usab nimo gamiton ang 'wget' nga sugo aron direktang i-download sa command line.

 wget http://download.jboss.org/wildfly/8.0.0.Final/wildfly-8.0.0.Final.zip

Kopyaha ang zip file sa bisan unsang gusto nga lokasyon (eg '/data/' sa akong kaso) ug pagkuha gamit ang 'unzip' nga mando.

 cp wildfly-8.0.0.Final.zip /data/
 cd /data/
 unzip wildfly-8.0.0.Final.zip

Karon ibutang ang pipila ka mga variable sa palibot. Mahimo nimong ibutang kini sa sistema sa maalamon o sulod sa imong mga file sa pag-configure. Dinhi ako nagbutang sa sulod sa mga file sa pag-configure standalone.sh ug standalone.conf sa folder nga 'bin'.

 cd wildfly-8.0.0.Final
 cd bin/

Idugang kining duha ka mosunod nga linya sa standlone.sh/standlone.conf files. Palihug ipiho ang imong lokasyon sa pag-install sa WildFly ug lokasyon sa Java Home.

JBOSS_HOME=”/data/wildfly-8.0.0.Final”
JAVA_HOME=”/data/java/jre7/bin/java”

Mubo nga sulat: Alang sa tibuok nga sistema sa gilapdon, mahimo nimo kini ibutang ubos sa '/etc/profile' file.

Karon sugdi ang server i.e. alang sa standalone mode gamita ang 'standalone.sh' ug alang sa domain mode gamita ang 'domain.sh'.

 ./standalone.sh
 ./domain.sh

Apan, ania ako nagsugod sa standalone mode. Pinaagi sa default magsugod kini pinaagi sa 'standalone.xml' file, Apan mahimo ka usab magsugod sa uban pang mga pag-configure gamit ang '–server-config' nga kapilian.

Ingon sa ubos nagsugod ako sa server nga adunay 'standalone-full-ha.xml' ug kini nga file anaa sa \$JBOSS_HOME/standalone(profile)/configuration/.

 ./standalone.sh --server-config standalone-full-ha.xml
Calling "/data/wildfly-8.0.0.Final/standalone/configuration/standalone.conf"
Setting JAVA property to "/data/java/jre7/bin/java"
===============================================================================

  JBoss Bootstrap Environment

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

  JAVA: "/data/java/jre7/bin/java"

  JAVA_OPTS: "-client -Dprogram.name=standalone.sh -Xms64M -Xmx512M -XX:MaxPerm
Size=256M -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman"

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

13:55:26,403 INFO  [org.jboss.modules] (main) JBoss Modules version 1.3.0.Final
13:55:33,812 INFO  [org.jboss.msc] (main) JBoss MSC version 1.2.0.Final
13:55:35,481 INFO  [org.jboss.as] (MSC service thread 1-1) JBAS015899: WildFly 8.0.0.Final "WildFly" starting
13:55:58,646 INFO  [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
...........
13:56:22,778 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
13:56:22,794 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
13:56:22,794 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.0.0.Final "WildFly" started in 64534ms - Started 229 of 356 services (172 services are lazy, passive or on-demand)

Karon mahimo nimong itudlo ang imong browser sa 'http://localhost:8080' (kung gigamit ang default nga gi-configure nga http port) nga nagdala kanimo sa Welcome Screen.

Gikan dinhi, mahimo nimong ma-access ang mga giya sa dokumentasyon sa komunidad sa WildFly ug gipauswag ang pag-access sa Administration Console nga nakabase sa web.

Naghatag ang WildFly 8 og duha ka administratibong console para sa pagdumala sa running instance:

    1. Web-based Administration Console
    2. command-line interface

    Sa wala pa magkonektar sa console sa administrasyon o layo nga gamit ang command line, kinahanglan nimo nga maghimo usa ka bag-ong user gamit ang 'add-user.sh' script sa bin folder.

    Sunod, adto sa 'bin' nga direktoryo, itakda ang 'JBOSS_HOME' sa add-user.sh (kung ang variable wala ibutang sa mga base sa sistema) ug paghimo og user sama sa ubos.

     ./add-user.sh

    Sa higayon nga magsugod sa script magiyahan ka sa proseso sa pagdugang og bag-ong user:

    What type of user do you wish to add?
     a) Management User (mgmt-users.properties)
     b) Application User (application-users.properties)
    (a):
    Enter the details of the new user to add.
    Using realm 'ManagementRealm' as discovered from the existing property files.
    Username : admin
    The username 'admin' is easy to guess
    Are you sure you want to add user 'admin' yes/no? yes
    Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
     - The password should not be one of the following restricted values {root, admin, administrator}
     - The password should contain at least 8 characters, 1 alphanumeric character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
     - The password should be different from the username
    Password :
    Re-enter Password :
    What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]:
    About to add user 'admin' for realm 'ManagementRealm'
    Is this correct yes/no? yes
    Added user 'admin' to file '/data/wildfly-8.0.0.Final/standalone/configuration/mgmt-users.properties'
    Added user 'admin' to file /data/wildfly-8.0.0.Final/domain/configuration/mgmt-users.properties'
    Added user 'admin' with groups  to file /data/wildfly-8.0.0.Final/standalone/configuration/mgmt-groups.properties'
    Added user 'admin' with groups  to file /data/wildfly-8.0.0.Final/domain/configuration/mgmt-groups.properties'
    Is this new user going to be used for one AS process to connect to another AS process?
    e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
    yes/no? yes
    To represent the user add the following to the server-identities definition 
    Press any key to continue . . .

    Karon i-access ang web-based Administration Console sa 'http://localhost:9990/console' ug isulod ang bag-ong gibuhat nga username ug password aron direktang ma-access ang Management Console.

    Unang Screen Human sa pag-login.

    Kung gusto nimo nga dumalahon ang imong server gikan sa CLI, padagana ang 'jboss-cli.sh' script gikan sa direktoryo nga 'bin' nga nagtanyag parehas nga kapabilidad nga magamit pinaagi sa web-based UI.

     cd bin
     ./jboss-cli.sh --connect
    Connected to standalone controller at localhost:9999

    Para sa dugang nga impormasyon, sunda ang opisyal nga WildFly 8 nga dokumentasyon sa https://docs.jboss.org/author/display/WFLY8/Documentation.