Aqui na empresa estamos iniciando um projeto de ERP e surgiu a possibilidade de utilizarmos Hibernate no nosso projeto. Houve a pergunta sobre os impactos na velocidade da aplicação ao utilizar o hibernate, queria perguntar o que vocês acham? Em grandes volumes de dados há muitos problemas de velocidade ao utilizar este framework? Se não for taaaanto impacto não haveria tantos problemas devido a considerável flexibilidade de um sistema em Hibernate.
Dependendo de como você vai usar o Hibernate, como vai configurá-lo, e que versão irá usar, irá é perceber ganhos de velocidade sobre uma aplicação onde o SQL é manualmente codificado - tudo depende de quem vai usar.
rodrigoallemand
Só para exemplificar, tenho uma aplicação com 220 entidades de banco de dados (uma ERP+CRM customizada) que roda com Hibernate e funciona perfeitamente, principalmente no quesito performance.
Vc precisa otimizar o Hibernate, claro, com os caches e as possiveis entidades que podem funcionar como ‘estaticas’.
Mas ficamos 3 meses vendo a aplicação em produção para encontrar possiveis gargalos, como queries mal formadas pelo hibernate. Nestes casos, quando o mapeamento ou um tunning do banco não davam a resposta desejada, partiamos para uma view com hint ou uma named quary mais elaborada…
T
thingol
rodrigoallemand:
Só para exemplificar, tenho uma aplicação com 220 entidades de banco de dados (uma ERP+CRM customizada) que roda com Hibernate e funciona perfeitamente, principalmente no quesito performance.
Vc precisa otimizar o Hibernate, claro, com os caches e as possiveis entidades que podem funcionar como ‘estaticas’.
Mas ficamos 3 meses vendo a aplicação em produção para encontrar possiveis gargalos, como queries mal formadas pelo hibernate. Nestes casos, quando o mapeamento ou um tunning do banco não davam a resposta desejada, partiamos para uma view com hint ou uma named quary mais elaborada…
De qualquer maneira, isso deve ter dado menos trabalho que fazer milhares de queries na mão, e achar as queries com problemas de desempenho. É só questão de aprender a usar corretamente o Hibernate.
rodrigoallemand
Caso seja um produto vendavel, e não um projeto comprado por algum cliente…
O pesado numa ERP são as regras de negocio… Pense bem antes de implementar seu modelo de dados. ERP tendem a ser muito fechadas quando desenvolvidas especificamente para um cliente.
Pense em outros nichos de mercado onde seu produto poderá ser encaixado. Acho que a definição de quantodade de tabelas não é nada perto da complexidade das regras de negocio aplicadas, que no meu caso eram dinâmicas…