static void Main()
{
#if DEBUG
// Run as interactive exe in debug mode to allow easy
// debugging.
var service = new MyService();
service.OnStart(null);
// Sleep the main thread indefinitely while the service code
// runs in .OnStart
Thread.Sleep(Timeout.Infinite);
#else
// Run normally as service in release mode.
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[]{ new MyService() };
ServiceBase.Run(ServicesToRun);
#endif
}
AppId используется во время создания SessionId, чтобы избежать конфликтов от одного приложения к другому. Он создается путем вычисления хэша пути к приложению IIS.
В вашей среде поток может быть примерно таким:
Чистый эффект наличия нескольких серверов с разными идентификаторами приложений, которые совместно используют одни и те же сеансы, заключается в том, что идентификаторы, созданные одним сервером, победят.