Hola lista!

Ha pasado harto tiempo desde este thread, pero me tocó que estoy teniendo el 
mismo problema, bueno, similar.

Estoy realizando un proyecto con WCF (self-hosted) y estoy inicializando un 
SessionFactory en cada request (son servicios REST), muy parecido a como lo 
estaba haciendo Plugin, el código se ve algo así como esto:

  public class DispatcherService : IDispatcherService
  {
    private readonly ISessionFactory _sessionFactory;
        
    public DispatcherService()
    {
      _sessionFactory = new Configuration
().Configure().BuildSessionFactory();
    }
        
    public MOResponseDTO ProcessMO(string text, string ani, string op, 
string id, string to)
    {
      try
      {
        using (ISession session = _sessionFactory.OpenSession())
        {
           ....
        }
      }
    }
  } 

Hice un test de pruebas de stress: hago 2 requests cada 0.5 segundos (un 
escenario común en mi caso) y al cabo de unos 4 minutos me quedé sin memoria 
RAM (tengo 3GB)

Al parecer el modo correcto en una aplicación ASP en construir el 
SessionFactory en el Application_Start() (para el patrón Session Per 
Request), pero tratándose de un servicio WCF, no logro encontrar cómo 
implementarlo. Leí por ahí que al ser "self-hosted" tengo más chance de 
hacerlo.

Alguien tiene algún conocimiento sobre esto?

Muchas gracias de antemano!

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