2011-10-03 4 views
11

Abbiamo ridotto alcune porzioni della nostra app ASP.NET per l'esecuzione su un server e altre parti per l'esecuzione su un altro server (& in un sottodominio).Guru ASP.NET: piccolo problema durante l'impostazione del nome dominio dell'app per la condivisione della sessione SQL nello scenario scale-out

I due server condividono (SQL Server) Sessione. Abbiamo usato this MS article per creare un piccolo modulo HTTP per sincronizzare il nome del dominio dell'app tra i due server (sans il codice dominio cookie, che può essere configurato nel web.config. Successivamente ho trovato this CodeProject article che è essenzialmente lo stesso.)

Funziona tutto bene, tranne per un piccolo problema: le modifiche alla distribuzione o le modifiche web.config richiedono un riciclo del pool di app manuale (il riciclo automatico non funziona più - invece viene visualizzato il messaggio di errore "server web non disponibile/hit refresh") .

Ho provato a spostare il codice di denominazione del dominio dell'app dal modulo HTTP nella sezione Application_Start del Global.asax (forse questo è un posto migliore per questo?) - ma ho ricevuto lo stesso problema.

So che una soluzione è codificare il nome dell'app in una delle stored procedure di SQL Server Session; ma sono un po 'titubante a farlo.

Edit: L'applicazione è ASP.NET 3.5 con IIS 6.0 (grazie @ Chris & @bzlm)

+0

Grazie Chris - Ho aggiunto il tag IIS. –

+1

Ciò che @Chris significa è che dovresti includere il * numero di versione * di .NET (ad es. 2.0) e IIS (ad esempio 6.0). – bzlm

+0

Questo tipo di errori di solito aggiunge una voce al registro eventi: se sì, potresti pubblicare qui l'errore che ottieni? –

risposta

0
Aggiornamento

. Abbiamo aperto un caso di supporto tecnico con Microsoft a riguardo. Dopo una settimana circa di back &, hanno affermato di aver riprodotto il problema nel proprio ambiente e di aver compreso la causa (un problema di temporizzazione all'interno degli interni di ASP.NET), ma che non esiste alcuna soluzione di cui siano a conoscenza. Mi sono lamentato del fatto che il modulo HTTP è il codice Microsoft, ma hanno detto che questo codice è in termini di "FAST PUBLISH" - inteso ad aiutare lo & a consigliare i clienti; ancora non garantito.

Ah bene. Ora ricicliamo manualmente il pool di app dopo aver apportato una modifica a web.config.

Problemi correlati