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
--~--~---------~--~----~------------~-------~--~----~
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