rodar duas instâncias do JBoss na mesma máquina  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
boaglio
Moderador
[Avatar]

Membro desde: 09/09/2002 21:23:39
Mensagens: 1865
Localização: Sampa City
Offline


Tem um tutorial no site da JBoss para configurar esse esquema de rodar 2 JBoss na mesma máquina.

Alguém aqui já utilizou esse ambiente ?

Dá para confiar isso em produção ?


 

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de Java via MP!
[WWW]
acdesouza
JavaChild
[Avatar]

Membro desde: 20/08/2007 02:57:52
Mensagens: 110
Localização: Rio de Janeiro
Offline

Onde eu trabalho, temos 3 ambientes:
* Teste integrado;
* Homologação;
* Produção.

Cada ambiente é uma máquina virtual diferente.
Nos 3 ambientes, temos duas versões do JBoss: 4.0.2 e 5.1.0

Tem funcionado.

[],
AC

[],
AC
[WWW]
boaglio
Moderador
[Avatar]

Membro desde: 09/09/2002 21:23:39
Mensagens: 1865
Localização: Sampa City
Offline


Ter máquina virtual no meu caso é inviável, não posso perder processamento para emular um novo sistema operacional.

Além disso, já tivemos tantos problemas com máquinas virtuais em alguns clientes, que os novos nem oferecemos mais a opção de usar VMWare, VirtualPC, VirtualBox.


 

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de Java via MP!
[WWW]
acdesouza
JavaChild
[Avatar]

Membro desde: 20/08/2007 02:57:52
Mensagens: 110
Localização: Rio de Janeiro
Offline

A questão da máquina virtual é irrelevante, foi mais de curiosidade.

O ponto é que em cada máquina virtual tem duas versões do JBoss.

[],
AC
[WWW]
Luciano Morozowski Junior
Smalltalk

Membro desde: 15/06/2005 16:09:45
Mensagens: 1
Localização: São Paulo
Offline

Nunca usei o Service Binding Manager do JBoss 5, mas já adotamos a mesma técnica de somar 100, 200, etc, às portas, mas de forma manual (alterando cada arquivo de configuração), com o JBoss 3.0. Chegamos a rodar 5 instâncias na mesma máquina de produção!

Quanto aos service locators, deixávamos as URLs (localhost:1099, localhost:1199, localhost:1299, etc) em arquivos de properties, de forma que não precisávamos refazer o build para fazer deploy em cada instância.
pozzo
JavaEvangelist

Membro desde: 08/04/2006 11:07:20
Mensagens: 331
Localização: Curitiba
Offline

boaglio wrote:
Tem um tutorial no site da JBoss para configurar esse esquema de rodar 2 JBoss na mesma máquina.

Alguém aqui já utilizou esse ambiente ?

Dá para confiar isso em produção ?


Cara, atualmente estou tendo problemas com o balanceador e sticky session em um servidor de homologação.
Em produção é um cluster de dois nós em máquinas separadas, e funciona bem.

Certa vez trabalhei em uma empresa com suporte da JBoss, o próprio suporte comentou que o Cluster JBoss deve ser evitado. Muita complexidade e instalibidade (isso era na versão 4.3 GA), não sei como está hoje.

This message was edited 1 time. Last update was at 10/03/2010 11:53:09

fmeyer
Moderador
[Avatar]
Membro desde: 22/02/2005 17:26:29
Mensagens: 1583
Localização: Sao Paulo
Offline

funciona bem, soh eh recomendado vc subir uma interface de rede diferente ao inves de trocar as portas.

Fernando Meyer http://fernandomeyer.com
[Email] [WWW]
fmeyer
Moderador
[Avatar]
Membro desde: 22/02/2005 17:26:29
Mensagens: 1583
Localização: Sao Paulo
Offline

pozzo wrote:
Certa vez trabalhei em uma empresa com suporte da JBoss, o próprio suporte comentou que o Cluster JBoss deve ser evitado. Muita complexidade e instalibidade (isso era na versão 4.3 GA), não sei como está hoje.


todo e qualquer cluster deve ser evitado se voce nao tiver necessidade pra ele, subir uma aplicacao simples em um cluster de jboss pra bonito eh burrice.


Fernando Meyer http://fernandomeyer.com
[Email] [WWW]
pozzo
JavaEvangelist

Membro desde: 08/04/2006 11:07:20
Mensagens: 331
Localização: Curitiba
Offline

fmeyer wrote:
pozzo wrote:
Certa vez trabalhei em uma empresa com suporte da JBoss, o próprio suporte comentou que o Cluster JBoss deve ser evitado. Muita complexidade e instalibidade (isso era na versão 4.3 GA), não sei como está hoje.


todo e qualquer cluster deve ser evitado se voce nao tiver necessidade pra ele, subir uma aplicacao simples em um cluster de jboss pra bonito eh burrice.


Isso é obvio. E não sei aonde comentei que era uma "aplicação simples".

Bom, detalhando melhor minha resposta, o motivo dos problemas eram principalmente pela implementação do jgroups, que se perdia com muitos nós. E também o JMS em cluster, que não balanceava as mensagens de forma adequada.

Como eu disse, era uma versão mais antiga. Muito provavél que isso deva estar bem melhor na nova versão do JBoss. Mas, se puder evitar de usar JBoss em cluster, melhor (opinião pessoal).

This message was edited 1 time. Last update was at 10/03/2010 17:32:04

cesarpiau
HelloWorld
[Avatar]

Membro desde: 08/10/2008 16:37:08
Mensagens: 12
Offline

Boa tarde, amigos.
Estou aproveitando esse post para colocar uma dúvida.
Estamos definindo a arquitetura de um sistema na qual estarei disponibilizando um serviço Java rodando em JBoss com SGBD PostgreSQL.
Não será um webservice e o consumo do serviço será via MQ a partir o WebSphere Message Broker.
Esse sistema será crítico e será necessário colocar mais de uma estância da aplicação/JBoss para dar conta do recado.
O problema é que o "infelizmente" o serviço será statefull (ok! podem me criticar) e estou quebrando a cabeça para descobrir uma forma de manter as sessões entre as várias instâncias do JBoss.
Até onde eu sei, dá pra fazer load balance no JBoss numa boa, porém, aí vem a minha dúvida:
"Como manter o estado daquele serviço compartilhado entre todas as instâncias do JBoss sem usar o SGBD para isso?"
Pensamos em usar uma hashtable para armazenar os dados, que serão muitos, mas não sei como mantê-la em todas as instância, já que o JBoss não faz necessariamente um Cluster.
Espero que tenha sido claro e agradeço a todos pela ajuda.
kbardock15
Debugger
[Avatar]

Membro desde: 18/03/2010 13:38:47
Mensagens: 60
Offline

Aqui na empresa usamos, é bem estável.

Desenvolvedor de TI
Oracle Targettrust Certified Associate
Sun Certified Java Programmer
Bacharelando em Ciência da Computação


" A Inteligência é o farol que nos guia, mas é a vontade que nos faz caminhar "
[MSN]
cesarpiau
HelloWorld
[Avatar]

Membro desde: 08/10/2008 16:37:08
Mensagens: 12
Offline

kbardock15 wrote:Aqui na empresa usamos, é bem estável.


Mas o que você realmente usa na sua empresa? Cluster ou só Load Balance no JBoss?
Todas as instâncias do servidor de aplicação compartilham da mesma sessão?


Alessandro Lazarotti
Virtual Machine Man
[Avatar]

Membro desde: 21/01/2004 14:12:54
Mensagens: 719
Offline

cesarpiau wrote:Boa tarde, amigos.
Estou aproveitando esse post para colocar uma dúvida.
Estamos definindo a arquitetura de um sistema na qual estarei disponibilizando um serviço Java rodando em JBoss com SGBD PostgreSQL.
Não será um webservice e o consumo do serviço será via MQ a partir o WebSphere Message Broker.
Esse sistema será crítico e será necessário colocar mais de uma estância da aplicação/JBoss para dar conta do recado.
O problema é que o "infelizmente" o serviço será statefull (ok! podem me criticar) e estou quebrando a cabeça para descobrir uma forma de manter as sessões entre as várias instâncias do JBoss.
Até onde eu sei, dá pra fazer load balance no JBoss numa boa, porém, aí vem a minha dúvida:
"Como manter o estado daquele serviço compartilhado entre todas as instâncias do JBoss sem usar o SGBD para isso?"
Pensamos em usar uma hashtable para armazenar os dados, que serão muitos, mas não sei como mantê-la em todas as instância, já que o JBoss não faz necessariamente um Cluster.
Espero que tenha sido claro e agradeço a todos pela ajuda.


Pra fazer isso é muito simples, basta adicionar a tag <distributable/> no web.xml da aplicação e ser feito seu deploy no perfil all ou algum outro derivado dele.

This message was edited 1 time. Last update was at 23/09/2010 23:59:08


... Lezinho
------------------------
twitter: @lazarotti
http://alessandrolazarotti.wordpress.com/
http://jbossbrasil.org/

[Email] [MSN]
Alessandro Lazarotti
Virtual Machine Man
[Avatar]

Membro desde: 21/01/2004 14:12:54
Mensagens: 719
Offline

pozzo wrote:
fmeyer wrote:
pozzo wrote:
Certa vez trabalhei em uma empresa com suporte da JBoss, o próprio suporte comentou que o Cluster JBoss deve ser evitado. Muita complexidade e instalibidade (isso era na versão 4.3 GA), não sei como está hoje.


todo e qualquer cluster deve ser evitado se voce nao tiver necessidade pra ele, subir uma aplicacao simples em um cluster de jboss pra bonito eh burrice.


Isso é obvio. E não sei aonde comentei que era uma "aplicação simples".

Bom, detalhando melhor minha resposta, o motivo dos problemas eram principalmente pela implementação do jgroups, que se perdia com muitos nós. E também o JMS em cluster, que não balanceava as mensagens de forma adequada.

Como eu disse, era uma versão mais antiga. Muito provavél que isso deva estar bem melhor na nova versão do JBoss. Mas, se puder evitar de usar JBoss em cluster, melhor (opinião pessoal).


Com certeza ocorreu aí um grande problema de comunicação. O problema não esta no jgroups, mas nas camadas onde ele atua, transporte e rede. O padrão que vem no servidor de aplicação é trabalhar sobre UDP com multicasting, o que pode ser bom para pequenas e redes e poucas instancias. Mas se sua rede apresenta problemas de latencia, perda de pacotes, não é isolada entre outras coisas, você deve alterar a configuração inicial para TCP. Com isso os problemas de comunicação entre os nodes desaparecerão e o cluster com jgroups+jbossCache não apresentará problema.

... Lezinho
------------------------
twitter: @lazarotti
http://alessandrolazarotti.wordpress.com/
http://jbossbrasil.org/

[Email] [MSN]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team