Soy un fanático del estilo de implementación de @ Guillaume. Utilizo un controlador GIF transparente y colas en memoria para agrupar conjuntos de cambios que luego se limpian periódicamente utilizando un subproceso separado creado en global.asax.
El controlador implementa IHttpHandler, procesa los parámetros de solicitud, p. ID de página, idioma, etc., actualiza la cola, luego response.writes el GIF transparente.
Moviendo cambios persistentes en un hilo separado de la facilidad de la solicitud también se ocupa mucho mejor con posibles problemas de serialización de la ejecución de múltiples servidores, etc.
Por supuesto, usted podría pagar a alguien para hacer el trabajo también, por ejemplo, con gifs transparentes.
Uno de los desafíos aquí es a) la posibilidad de serialización ob) una condición de carrera: depende del nivel de aislamiento de la transacción. – stephbu
Correcto, una de las preocupaciones que tenemos es posiblemente una condición de carrera. ¿Debería hacerse esto de manera asíncrona? – TimLeung
@stephbu: para su b) es más una condición de carrera no crítica porque el aumento de +1 no cambia si una consulta se realiza al mismo tiempo ... +1 +1 o +1 +1 igual siempre +2. –