quinta-feira, 15 de dezembro de 2011

Implementando Conexoes IPC entre Servidores

Ola amigos,

Estou ha algum tempo sem postar nenhum artigo, como o ano esta para acabar reservei um tempo para fazer um prova de conceito sobre conexoes stream pipe na plataforma IBM AIX.

A cerca de 10 anos atras quando ainda trabalhava com Informix rodando sobre Tru64 tinhamos um problema de performance com aplicacoes 4gl que estavam sendo executadas dentro do servidor do banco de dados atraves de conexoes IPCSHM (Shared Memory).

Um certo momento no lancamento do Bigbrother 1 no Brasil tivemos uma sobrecarga no ambienten e nao pudemos crescer o servidor, e foi necessario segregar os aplicativos 4gl e o banco de dados em servidores distinto, nao preciso dizer que trocamos o metodo de acesso IPCSHM por TCP/IP.

Apos algum tempo fizemos um estudo com StreamPipe e descobrimos uma oportunidade, o protocolo IPC utiliza o metodo SHM (Shared Memory) para a troca de informacoes entre a aplicacao client e o servidor, no caso do metodo STR (Stream Pipe) sao utilizados arquivos que ficam residentes no cache do filesystem.

A tecnologia embutida no cluster do Tru64 nos permitia compartilhar arquivos (shared disk) em diversos servidores, configuramos os filesystems $INFORMIXDIR e /INFORMIXTMP para acesso read/write em todos os servidores de forma simultanea e implementamos a conectividade atraves de IPCSTR para todos os aplicativos 4gl.

O resultado disto foi um ganho de performance grande tendo em vista que removemos a comunicao atraves de TCP/IP e passamos a utilizar o mecanismo interconnect to cluster para transportar a informacao , para o banco de dados tudo isto foi transparente.

Me lembro que esta configuracao nao era suportada pela Informix, somente pelo fato que nao era comum este tipo de configuracao na epoca.

Estou elaborando uma prova de conceito desta mesma arquitetura em ambiente AIX com GPFS/PowerHA, caso funcione irei fazer os benchmarks para demonstrar aqui os resultados/ganhos deste POC.

Quem tiver interesse em acompanhar esses testes pode me contactar atraves do email vagnerpontes@ig.com.br

Vagner