Introdução ao Infinispan – Parte 1

Postado em Atualizado em

Infinispan é uma plataforma para grid de dados que é fornecidade pela JBoss/Red Hat. Atualmente existem duas versões o JBoss Infinispan e o JBoss Data Grid. Basicamente é o mesmo projeto com a diferença de que o JBoss Data Grid possui suporte garantido pela compra de subscrição que fornece correções quando necessário, suporte 24×7 com equipes espalhadas por todo o mundo. Para saber mais veja os links abaixo:

JBoss Data Grid

http://www.redhat.com/promo/dg6beta/

JBoss Infinispan

http://www.jboss.org/infinispan.html

Plataformas de data grid geralmente são utilizadas para reduzir a latência do banco de dados. Vocẽ pode utiliza-lo como cache distribuido para prover um acesso rápido aos dados.

Why is Infinispan sexy? (Vantagens do utilizar o Infinispan)

  • Você pode criar um ambiente clusterizado com simples configurações.
  • Você pode configurar o Infinispan para persistir o estado dos dados em arquivos em disco ou em um banco de dados.
  • Você pode utilzar o JON/RHQ para fazer o gerenciamento dos objetos.
  • Suporte a transações(JTA).
  • O Infinispan possui mecanismos para evitar erros de out-of-memory(eviction)

O Infinispan é o resultado da implementação da JSR 107: JCACHE – Java Temporary Caching API[1][2]. Atualmente existe um novo movimento em torno da JSR 347: Data Grids for the JavaTM Platform[3] que propõe uma API para interagir com a memória e disco baseados em redes de dados distribuídos. Você pode ver mais sobre isso no link[4].

Além disso o Infinispan veio para substituir o JBoss Cache e ainda é possível utilizá-lo como cache de segundo nível para o hibernate[5].

No próximo post vamos ver o Infinispan na pŕatica.

[1] – http://jcp.org/en/jsr/detail?id=107
[2] – http://infinispan.blogspot.com/2011/02/jsr-107-and-jsr-on-data-grids.html
[3] – http://www.jcp.org/en/jsr/detail?id=347
[4] – http://infinispan.blogspot.com/2011/05/jsr-347-data-grids-for-java-platform.html
[5] – http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/performance.html#performance-cache

9 comentários em “Introdução ao Infinispan – Parte 1

    victor neves disse:
    29 de maio de 2012 às 14:26

    Opaa! fala Maurício! de boa?
    Cara, eu queria te fazer uma pergunta mas não tem nada haver com essa matéria do Infinispan. Estou com uma duvida sobre a capacidade de gerenciamento de objetos em sessão no JBoss versão 6.0.0 e queria a sua opinião.
    To querendo guardar uma informação em sessão de cada usuário que logar no sistema, na verdade é um objeto booleano, se eu nao fizer isso terei que constantemente ficar fazendo select no BD para recuperar esse valor booleano. Quando o usuário sair do sistema um método cuida de liberar esse objeto da memória.

    O problema é que imagine que esse sistema tenha cerca de 300 acessos por dia. Nada muito grande, mas nem tão trivial assim.
    A questão é, para não ter que ficar fazendo select no BD, eu poderia colocar isso em memória (usando o request.getSession().setAtribute() do java ) no JBoss sem medo? o JBoss conseguiria administrar esses objetos sem bagunçar na sua memória?
    Caso influencie, o servidor que roda o JBoss tem hoje 4 GB de memória e um Debian6 64bits.
    vlwww
    abração

    Mauricio Magnani respondido:
    29 de maio de 2012 às 17:46

    E ai Victor blz Sim🙂

    Sim, a idéia de usar o escopo de sessão para guardar objetos é bem normal… e pelo que você me disse seria somente 300 usuário por dia é bem baixo esse valor acho que você não deve ser procupar muito com isso, mas é lógico que se a quantidade de usuário aumentar muito, outras medidas devem ser tomadas… Na minha opnião 4GB somente para o JBoss está tranquilo o problema é que pelo que entendi os 4GB são compartilhados com todos os processos do servidor né? Eu acho pouco… mas só testando para ver o que rola mesmo…

    Você pode simular essa situação utilizando o JMeter(http://jmeter.apache.org/) ai sim você vai ter a certeza de como o seu servidor se comporta…

    Espero que tenha ajudado, se você ainda estiver com alguma dúvidade é só dizer…

    Abraços

    victor neves disse:
    29 de maio de 2012 às 20:47

    blz, vou dar uma olhada nesse JMeter, acho que já tinha escutado falar nele…
    os 4GB são da máquina onde fica SÓ o JBoss, o Debian em modo texto nao consome mais do que 60MB aproximadamente, então sobra ai bastante pro JBoss. E nesse servidor não há mais nenhum serviço adicional instalado além do que já vem default no linux…
    vlw pela dica!

    Mauricio Magnani respondido:
    30 de maio de 2012 às 10:44

    Então tá tudo certo🙂
    Nem precisa se procupar😉
    []s

    sardosa disse:
    4 de junho de 2012 às 19:34

    Mauricio,

    parabéns pelo blog.

    Quando sai a segunda parte?

      Mauricio Magnani respondido:
      4 de junho de 2012 às 22:46

      E ai tudo bom🙂
      Vlw Vlw😀
      Hoje já está meio tarde rsrs
      mas amanhã eu vou colocar a segunda parte e tentar colocar um exemplo bem prático🙂

      Abraços

    Mauricio Magnani respondido:
    5 de junho de 2012 às 23:21

    Não conseguir terminar o post ainda.. estou fazendo mais alguns testes.

    []s

    braiannunesBraian disse:
    23 de setembro de 2013 às 19:45

    Fala Maurício, tudo bem?
    Sei que o post é um pouco antigo, mais minha dúvida é recente rsrs.
    Estou trabalhando em um projeto em que preciso de uma certa redundância/disponibilidade de dados e acho que o infinispan iria me ajudar. A ideia é que os dados sejam armazenados em memória e no banco de dados. Caso o banco de dados fique em OFF os dados eram persistidos apenas em memória. A ideia é válida? Pode me ajudar?

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s