JBoss 5 in cluster e con sessione replicata su uno stesso PC

Di recente mi è capitato di dover sviluppare un applicazione web utilizzabile in cluster su JBoss 5 e con la sessione http replicata.

Il primo problema con cui ci troviamo a combattere è far partire 2 istanze di JBoss sullo stesso computer. Per risolvere ciò è necessario creare delle copie identiche della cartella [jboss-X]/server/all e chiamarle rispettivamente node1, node2.
Queste cartelle saranno tutte identiche e rappresentaranno il “workspace” della nodo.
Per eseguire il primo nodo basta scrivere:

> sh run.sh -c node1

Dove la parola che segue “-c” indica la configurazione da utilizzare per l’avvio.
Ora il primo nodo partirà sulla porta 8080.

Se andiamo ad avviare il secondo nodo cambiando solo node1 con node2 non funzionerà perchè andrà ad occupare la stessa porta. Per evitare ciò andiamo ad aggiungere una opzione al comando che diventerà:

> sh run.sh -c node2 -Djboss.service.binding.set=ports-01 -Djboss.messaging.ServerPeerID=1

l’opzione della virtual machine jboss.service.binding.set indica che questa configurazione dovrà partire sulla porta 8180.

Ora possiamo accedere ai due nodi agli indirizzi:

http://localhost:8080
http://localhost:8180

Ma come possiamo sapere se tutto è andato a buon fine? Per fare questo ho creato 2 semplici jsp:

set.jsp:

id di sessione: <%=request.getSession().getId()%>
<br />
<%request.getSession().setAttribute("test", "test ok");%>

get.jsp:

id di sessione: <%=request.getSession().getId()%>
<br />

Parametro: <%=request.getSession().getAttribute("test").toString()%>

E nel web.xml subito dopo il tag display-name o comunque all’interno del tag web-app inseriamo:

<distributable />

Questo dirà al nostro application server che questa applicazione è distribuita.

Entrambe le pagine jsp create in precedenza stampano a video l’id della sessione.
La pagina set.jsp imposta un valore nella sessione, mentre la pagina get.jsp lo legge, quindi se accediamo agli indirizzi:

http://localhost:8080/%5Bnome_webapp%5D/set.jsp
http://localhost:8180/%5Bnome_webapp%5D/get.jsp

Verificheremo che l’id della sessione siano identici e che in get.jsp venga stampato il messaggio: “tutto ok!”.

Se il test è andato bene vuol dire che la sessione è stata replicata con successo.

Per il momento questo è tutto. Se avete bisogno di aiuti, chiarimenti e simili commentate pure.

Annunci

~ di jesty su agosto 19, 2009.

14 Risposte to “JBoss 5 in cluster e con sessione replicata su uno stesso PC”

  1. Ciao,molto interessante la guida.
    Vorrei sapere, come poter fare il polling di 2 instanze di jboss utizzando un front end?

    • ciao, intendi dire che tramite Ajax (o altro) vuoi fare del polling sul cluster senza conoscere quale nodo stai contattando? In tal caso ti basta configurare un Load Balancer, ad esempio Apache mod_proxy. In questo modo avresti un server Apache che si occupa di indirizzare le chiamate che gli arrivano sui nodi del cluster. La politica utilizzata di default è il Round Robin, in pratica manda la richiesta al nodo che ne ha di meno. Esistono anche altri load balancer in cui puoi definire politiche di bilanciamento più complesse, considerando ad esempio non il numero di richieste per nodo, ma il consumo di memoria, cpu, etc… Spero di aver risposto correttamente 🙂

  2. perfetto ti ringrazio!!!
    per effettuare la prova dove metto set.jsp e get.jsp e il web.xml lo devo creare io??? (e se si dove va messo?)

    • La struttura del progetto dovrebbe essere:

      cartella_principale/set.jsp
      cartella_principale/get.jsp
      cartella_principale/WEB-INF/web.xml

      Nel web.xml basta inserire:


      <web-app>
      <display-name>Test Web Application</display-name>
      <distributable/>
      </web-app>

  3. la cartella principale deve esere sotto quella di deploy ad esempio:

    /usr/local/jboss-5.1.0.GA/server/nodo1/deploy/cartella_principale?

  4. Ciao, molto interessante il tuo articolo. Ho notato una cosa, il deploy dell’ear avviene in maniera corretta su entrambi i cluster, quando carico le pagine jsp nessun problema, l’id della sessione è lo stesso solo che la pagina get non riesce a visualizzare il parametro(è null) settato nella set

  5. All they need to do is to enroll with their name, email, contact number and country and
    vemmabuilder will cater to the particular country of the person.

    It’s easy to use a fake IP address on i – Phone and i – Pad, but you need to know what you need the fake IP for. Once safely at Thebes, though, the obelisks were brought to the temple at Karnak with much fanfare.

  6. There are a number of benefits associated with form builder just the same way it is the best tool to showcase
    potential. This series machine that can separate the minerals dependent on
    the different magnetic factor, magnetic force and mechanical force.

    Finishing touches to think about include:
    A large entry shelf is a platform where the water depth
    is 8 to 12 inches deep.

  7. However, there are several online interfaces available where
    one needs to click on different types of options to send HTML
    code in email or to generate HTML code. It’s easy to use a fake IP address on i – Phone and i – Pad, but you need to know what you need the fake IP for. The specific combination of reps, sets, exercises, and weight depends upon the desires of the body builder.

  8. Flash web designers will like the cost and the
    creativity of the Trendy Flash Site Builder. You might get
    one or more benefits of outline designer along with it
    is the ideal means to unleash the capacities.
    Html form builder renders efficient service to online business companies to create any
    sort of online form to integrate it into their website and receive incoming information from online visitors.

  9. Cheers to your PROFITmatic Turnkey Automated Internet Profit Center,.
    It’s easy to use a fake IP address on i – Phone and i – Pad, but you need to know what you need the fake IP for. Once safely at Thebes, though, the obelisks were brought to the temple at Karnak with much fanfare.

  10. Those that cannot apply for this kind of card or that would prefer a different solution could consider a prepaid card that comes with a credit building
    element as an alternative. You might get one or more benefits of outline
    designer along with it is the ideal means to unleash the capacities.
    You wont get a true imitation of your signature with this
    Android app, unless you can cleverly manipulate the
    mechanics behind its operation, but that is highly unlikely.

  11. Cheers to your PROFITmatic Turnkey Automated Internet Profit Center,.
    Rather, they’re designed to help spark possibilities in your own mind. If a picture is worth a thousand words then you can just image how much you will absorb by browsing this site.

  12. Horizontal Siding and Vertical Sliding refers to the outer layer of a wall,
    with shingles or boards or gaps subtly angled to shed water.
    Wouldn’t it be easier if we could be able to save changes ourselves whenever we want. We saw earlier that we could, through links to email addresses, contact directly with an email.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

 
%d blogger hanno fatto clic su Mi Piace per questo: