"- Usar consultas nombradas con Hql es un poco más performante"
Ler "Perfomante" me da dolor en los ojos...
Saludos

On 25 ene, 17:35, Dario Quintana <[email protected]>
wrote:
> Hola
>
> Es dificil saber a ciencia cierta donde hacer los retoques, pero te podría
> decir qué le des una mirada a los siguientes tópicos:
> - Usar StatelessSession. Es una Session sin cache de primer nivel, diseñada
> para procesos en lotes.
> - Usar Updates en 
> "masa".http://blog.darioquintana.com.ar/2007/12/11/nhibernate-bulk-manipulat...
> - Usar consultas nombradas con Hql es un poco más performante, las consultas
> se cachean en la compilación de NH y se usan siempre.
>
> Pero bueno, cada aplicación es un mundo, y es dificil decir donde está el
> problema. Saludos
>
>
>
> On Sun, Jan 25, 2009 at 12:40 AM, uhilari <[email protected]> wrote:
>
> > Hola a todos Foreros.
>
> > Tengo este problema, lo que pasa es que en el Sistema que estamos
> > desarrollando, bueno, mas que un desarrollo es una actualizacion, lo
> > que hacemos es tomar un sistema que existe hech en VB6, que usa SQL
> > nativo y ahora lo estamos pasando a C# .Net para la persistencia
> > estamos usando NHibernate. La programacion de los procesos son mas
> > logicos y mas intuitivos para cualquier persona que no haya
> > participado en el desarrollo. Esta es una gran ventaja.
>
> > Pero ahora viene el problema, veran en el sistema (tanto anterior como
> > actual) tenemos 3 procesos criticos que son procesos en lotes del tipo
> > Background, en el primer Sistema lo mas que demoraba cualquiera de
> > estos procesos era de 2 minutos, el tiempo promedio era de 20
> > segundos, pero ahora haciendolo con NHibernate el mejor tiempo que
> > conseguimos fue de 10 minutos, esto es inaceptable por parte del
> > proyecto.
>
> > Tengo una teoria de por que demora tanto, que cuando realizo el
> > proceso veo que dispara muchos Insert - Updates y Select (sobre todo
> > los select), asi que lo que hicimos para mejorar esto es poner los
> > datos necesarios en una cache en la memoria de la PC, esto hizo que el
> > tiempo bajara a 4:40 pero aun asi es inaceptable.
>
> > El primer proceso que hicimos teniamos el Session.Save y el
> > Session.Flush, dentro del bucle, uno despues del otro, y el tiempo era
> > de 4:40. Luego lo que usamos fue: en el bucle del proceso solo poner
> > los Session.Save y dejar el Session Flush, para salir del bucle, pero
> > esto no mejoro el tiempo del proceso, sino que nos creo un tiempo
> > muerto en la Interfaz.
>
> > Lo que pido a Uds. expertos en NHibernate es que nos ayuden con ideas
> > de como poder accelerar este proceso.
> > Ya que si el tiempo sigue igual, no justifica el hecho e hacer un
> > nuevo sistema.
>
> > Gracias
>
> --
> Dario Quintanahttp://darioquintana.com.ar
--~--~---------~--~----~------------~-------~--~----~
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---

Responder a