Eu vs Prevayler

8 respostas
guscoppi

Opa!

Estou começando minha batalha para usar o Prevayler, no entanto, como tudo que começo a estudar, tenho muitas dúvidas. Vou enumerar para ficar mais fácil…

  1. Prevayler trabalha com objetos persistitos na memória, certo? Ou seja, não tenho um BD, minhas informações são meus objetos na memória RAM, é isso?

  2. Se ele é salvo na memória, desculpem a ignorância da pergunta, mas tenho que fazer, não há risco de quando eu desligar o computador, trocar pentes de memória (por exemplo trocar 2 x 512MB por 1 x 1GB), perder os dados?

  3. A quantidade de memória da minha máquina passa a limitar o crescimento da minha aplicação, e não mais o tamanho do HD?

  4. Pretendo fazer uma aplicação em ambiente web utilizando o Prevayler. Essa aplicação deve possuir um crescimento considerável de dados mensalmente. Deverá ser utilizada por todas as áreas de uma grande corporação, inclusive a diretoria e presidência. Há algum risco em utilizar o Prevayler?

  5. Há como fazer backup das informações? Ou utilizar algo parecido com espelhamento de HD?

  6. Utilizando BD eu fiz em uma aplicação o seguinte. Separei o funcionamento em 3 servidores. Servidor de aplicação, servidor de BD e servidor de FileSystem. Utilizando Prevayler, tem como fazer algo parecido?

Não espero exemplos de como fazer em cada item, só que me digam se é possível ou não, se já fizeram algo parecido, uns “cases de sucesso”, etc…

Valeu.

8 Respostas

pcalcado

Tudo o que você perguntou:

http://www.prevayler.org :wink:

[]s

rodrigousp
  1. é isso
  2. prevayler é que faz a diferença entre ter os objetos na memória, e uma camada forma de persistir os objetos. (ele faz um snapshot dos objetos e coloca no disco)
  3. claro que não … vc pode usar memória de swap (não acho recomendável)
  4. todos !!! Se a aplicação for séria veja bem o que vc está fazendo.
    Se algum dia vc quiser mudar as classes persistidas… vc terá que arrumar um jeito de fazer isto
  5. sim
  6. sim
pcalcado

Ops, não, não…

Sim, a quantidade de dados na aplicação está limitada a quantidade de memória principal. A Prevalent Hypothesis é exatamente essa.

[]s

smota

YES! (tecnicamente seria NO - eles não são persistidos na memória mas sim trabalhados nela - mas de qq modo a idéia é essa)

:shock: :shock: :shock: :shock: :shock: :shock: :shock: :silly: :shocked!: :shocked!: :shocked!: :shocked!: :shocked!: :shocked!: :shocked!:

Resumindo: Não!

Exatamente – a promessa eh que memoria ram eh muito barato e vai ficar cada vez mais.

Hummmm … eles vão dize que não, outros vao dizer que sim … eu digo nao sei.

Veja se sua memoria vai conseguir acompanhar o crescimento pra depois nao ficar com cara da tacho.

Outro problema para ambiente web é que o Prevayler não controla concorrência e isso você terá que fazer.

Talvez mesclar seja sua saída … alguns itens como configuracoes, preferencias e outros do genero se encaixam bem com o prevayler sem muito trabalho enquanto a manipulacao de grandes massas de dados é testada e aprovada nos SGBDs.

Sim … o espalhamento já é uma segurança a mais pq a persistencia dos dados eh feita no disco mesmo … o backup tb faz-se sem grandes problemas.

Servidor de Filesystem? …

Sim tem como.

cv1

Opa opa opa… o Prevayler controla sim. Todas as transacoes sao enfileiradas e executadas na sequencia em que chegaram :wink:

guscoppi

Galera, valeu pelas respostas.
Smota, show de bola tuas explicações. A proposito, FileSystem eu chamei um servidor que a gente usou para guardar os arquivos que os usuários faziam upload, ou seja… Um servidor tinha nossa aplicação, um o BD e outro iam os arquivos que os usuários faziam Upload.

Mas… depois das explicações… para esse projeto acho que não irei usar o Prevayler…

Valeu.

rodrigousp

CV … ficou uma dúvida…

Como todo programa Java, o espaço inicial do prevayler não é determinafo naqueles parâmetros -Xmx -Xalguma etc , etc etc.
Eu não poderia estar alocando memória virtual para alocar o programa (uma vez que a memória virtual é transparente para os programas) ???
Eu sei que no caso do problema, mesmo que isto fosse possível seria o fim da eficiência, mas por que não seria possível ???

cv1

E eh possivel, mas vc ja viu o que acontece com uma JVM quando ela esbarra na memoria virtual? :wink:

Criado 12 de julho de 2004
Ultima resposta 14 de jul. de 2004
Respostas 8
Participantes 5