Previamente abordamos a instalação do Fuse Message Broker e como configurá-lo para inicialização através de serviço do Ubuntu. Neste novo artigo abordaremos como criar um novo destino de mensagens para o nosso message broker previamente instalado. Existem duas possibilidades para gerar um novo destino de mensagens no Fuse Message Broker. Uma delas é utilizar a criação em tempo de execução, e esta pode ser executada através de:
- chamada a createQueue() através de uma sessão JMS.
- criar uma instância de ActiveMQTopic ou ActiveMQQueue e registrar como um recurso JNDI para o seu servidor.
Ou podemos determinar que destinos serão criados ao inicializarmos a ferramenta (se configurado conforme artigo anterior, através do comando sudo service fuse-message-broker start). Para configurar uma fila ou um tópico seguindo o segundo exemplo devemos alterar a configuração do arquivo activemq.xml. Este arquivo se encontra na pasta conf dentro do caminho de instalação escolhido para a ferramenta. Seguiremos os caminhos especificados durante a nossa instalação demonstrada no artigo anterior:
cd /opt/fuse-message-broker-5.3.1/conf
sudo pico activemq.xml
E devemos inserir o seguinte conteúdo:
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
...
<broker xmlns="http://activemq.apache.org/schema/core">
...
<destinations>
<queue physicalName="FOO.BAR" />
<topic physicalName="SOME.TOPIC" />
</destinations>
...
</broker>
</beans>
com esta configuração dizemos que ao inicializar o message broker, criaremos um tópico denominado SOME.TOPIC e uma fila denominada FOO.BAR.
Referência
http://activemq.apache.org/how-do-i-create-new-destinations.html
http://activemq.apache.org/configure-startup-destinations.html
“Sempre codifique imaginando que o responsável pela manutenção do seu sistema será um psicopata violento que sabe onde você mora.” (Martin Golding)
Mostrando postagens com marcador Gerenciador de Filas. Mostrar todas as postagens
Mostrando postagens com marcador Gerenciador de Filas. Mostrar todas as postagens
segunda-feira, 12 de julho de 2010
quarta-feira, 30 de junho de 2010
Instalando o Fuse Message Broker v5.3 no Ubuntu 10.04 LTS
Para instalar o fuse message broker v5.3 no Ubuntu 10.04 LTS inicialmente devemos efetuar o download do arquivo de instalação. Para isso executamos os seguintes comandos:
cd ~
mkdir installs
cd installs
mkdir fuse-message-broker
cd fuse-message-broker
wget http://repo.fusesource.com/maven2/com/iona/fuse/fuse-message-broker/5.3.1-02-00/fuse-message-broker-5.3.1-02-00-unix.bin
Após o término do download, vamos executar o instalador em modo console:
chmod +x fuse-message-broker-5.3-unix.bin
sudo sh fuse-message-broker-5.3-unix.bin -i console
Devemos executar o instalador com o comando sudo pois instalaremos o aplicativo na pasta /opt e é necessário ter permissão de escrita para instalar nesta pasta. O termo de licença será apresentado e devemos pressionar até que este seja finalizado. Quando este terminar, devemos aceitar os termos e então será oferecido o seguinte caminho de instalação /opt/progress/fuse-message-broker-5.3.1-02-00 (ou algo semelhante dependendo da sua versão). Eu gosto de mudar esta estrutura para facilitar meus scripts para /opt/fuse-message-broker-5.3.1.
O script começará a instalação e uma barra de progresso será exibida. Ao finalizar o instalador oferece a opção de salvar a configuração da instalação caso seja necessário executar uma instalação idêntica em outros servidores ou caso queira efetuar a mesma instalação novamente posteriormente. Digite Y caso queira salvar ou N caso não seja necessário.
Uma mensagem de sucesso será exibida contendo a pasta em que o software foi instalado. Pressione para retornar ao prompt. É válido ressaltar que a qualquer momento durante a instalação podemos inserir o comando de desistência:
quit
vamos colocar o usuário fuse-message-broker como owner da nossa pasta:
sudo chown fuse-message-broker /opt/fuse-message-broker-5.3.1 -R
Para configurar o software gerenciador de filas, devemos executar o seguinte comando:
cd /opt/fuse-message-broker-5.3.1/conf
sudo pico activemq.xml
Este arquivo contém algumas configurações para o servidor de filas. Todas as linhas são comentadas e aconselho a ler cada um dos comentários com paciência e pesquisar á respeito quando tiver alguma dúvida. O primeiro item que mudo na minha configuração é a seguinte:
<broker ... brokerName="localhost">
para:
<broker ... brokerName="myname-broker">
Vamos adicionar um usuário para executar inicializar o Fuse Message Broker com permissões limitadas e criar um diretório de logs para jogar a saída da inicialização do nosso broker:
sudo adduser --system fuse-message-broker
sudo -u fuse-message-broker mkdir /home/fuse-message-broker/logs
E vamos criar um script para inicialização da nossa instância como um serviço do ubuntu:
cd /etc/init.d/
sudo pico fuse-message-broker
E inserir o seguinte conteúdo dentro do arquivo:
#! /bin/sh
FUSEMESSAGEBROKER_HOME=/opt/fuse-message-broker-5.3.1
start(){
echo "Starting Fuse Message Broker 5.3.1
sudo -u fuse-message-broker sh ${FUSEMESSAGEBROKER_HOME}/bin/activemq > /home/fuse-message-broker/logs/out.log
}
stop(){
echo "Stopping Fuse Message Broker 5.3.1"
sudo -u fuse-message-broker sh ${FUSEMESSAGEBROKER_HOME}/bin/activemq-admin stop >> /home/fuse-message-broker/logs/out.log
sleep 60
}
restart(){
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: fuse-message-broker {start|stop|restart}"
exit 1
esac
exit 0
Para inicializar o nosso broker utilizamos o seguinte comando:
sudo service fuse-message-broker start
Para parar o mesmo utilizamos:
sudo service fuse-message-broker stop
Para acompanhar a saída da nossa instância (que não está sendo redirecionada para a saída padrão) devemos executar o seguinte comando:
tail -f /home/fuse-message-broker/logs/out.log
Futuramente configuraremos nosso fuse message broker para habilitar outros protocolos e otimizar seu desempenho, mas por enquanto tempo o broker rodando com as configurações padrões.
Referências:
http://fusesource.com/docs/broker/5.3/getting_started/index.html
cd ~
mkdir installs
cd installs
mkdir fuse-message-broker
cd fuse-message-broker
wget http://repo.fusesource.com/maven2/com/iona/fuse/fuse-message-broker/5.3.1-02-00/fuse-message-broker-5.3.1-02-00-unix.bin
Após o término do download, vamos executar o instalador em modo console:
chmod +x fuse-message-broker-5.3-unix.bin
sudo sh fuse-message-broker-5.3-unix.bin -i console
Devemos executar o instalador com o comando sudo pois instalaremos o aplicativo na pasta /opt e é necessário ter permissão de escrita para instalar nesta pasta. O termo de licença será apresentado e devemos pressionar
O script começará a instalação e uma barra de progresso será exibida. Ao finalizar o instalador oferece a opção de salvar a configuração da instalação caso seja necessário executar uma instalação idêntica em outros servidores ou caso queira efetuar a mesma instalação novamente posteriormente. Digite Y caso queira salvar ou N caso não seja necessário.
Uma mensagem de sucesso será exibida contendo a pasta em que o software foi instalado. Pressione
quit
vamos colocar o usuário fuse-message-broker como owner da nossa pasta:
sudo chown fuse-message-broker /opt/fuse-message-broker-5.3.1 -R
Para configurar o software gerenciador de filas, devemos executar o seguinte comando:
cd /opt/fuse-message-broker-5.3.1/conf
sudo pico activemq.xml
Este arquivo contém algumas configurações para o servidor de filas. Todas as linhas são comentadas e aconselho a ler cada um dos comentários com paciência e pesquisar á respeito quando tiver alguma dúvida. O primeiro item que mudo na minha configuração é a seguinte:
<broker ... brokerName="localhost">
para:
<broker ... brokerName="myname-broker">
Vamos adicionar um usuário para executar inicializar o Fuse Message Broker com permissões limitadas e criar um diretório de logs para jogar a saída da inicialização do nosso broker:
sudo adduser --system fuse-message-broker
sudo -u fuse-message-broker mkdir /home/fuse-message-broker/logs
E vamos criar um script para inicialização da nossa instância como um serviço do ubuntu:
cd /etc/init.d/
sudo pico fuse-message-broker
E inserir o seguinte conteúdo dentro do arquivo:
#! /bin/sh
FUSEMESSAGEBROKER_HOME=/opt/fuse-message-broker-5.3.1
start(){
echo "Starting Fuse Message Broker 5.3.1
sudo -u fuse-message-broker sh ${FUSEMESSAGEBROKER_HOME}/bin/activemq > /home/fuse-message-broker/logs/out.log
}
stop(){
echo "Stopping Fuse Message Broker 5.3.1"
sudo -u fuse-message-broker sh ${FUSEMESSAGEBROKER_HOME}/bin/activemq-admin stop >> /home/fuse-message-broker/logs/out.log
sleep 60
}
restart(){
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: fuse-message-broker {start|stop|restart}"
exit 1
esac
exit 0
Para inicializar o nosso broker utilizamos o seguinte comando:
sudo service fuse-message-broker start
Para parar o mesmo utilizamos:
sudo service fuse-message-broker stop
Para acompanhar a saída da nossa instância (que não está sendo redirecionada para a saída padrão) devemos executar o seguinte comando:
tail -f /home/fuse-message-broker/logs/out.log
Futuramente configuraremos nosso fuse message broker para habilitar outros protocolos e otimizar seu desempenho, mas por enquanto tempo o broker rodando com as configurações padrões.
Referências:
http://fusesource.com/docs/broker/5.3/getting_started/index.html
Marcadores:
Fuse Message Broker v5.3,
Gerenciador de Filas,
Instalação,
JMS,
Ubuntu 10.04 LTS Server
Assinar:
Postagens (Atom)