Guías, principios y técnicas para escribir aplicaciones y servicios escalables con Microsoft .NET
Índice
Capítulo I - La escalabilidad
- Prefacio
- Introducción
- ¿Qué es la escalabilidad?
- Fundamentos de la escalabilidad
- Revisión de los conceptos de estado, comportamiento e identidad (state, behavior, identity)
- Identidad distribuida en .NET
- Identidad compartida
- Implementación de named objects
- Problemas de la identidad compartida
- Revisión de la identidad
- Implementación de named objects con identidad lógica basada-en-llaves
- Implementación de named objects en una base de datos
- El modelo objeto-por-cliente
- Transacciones
- Clientes, transaction managers y resource managers
- Transacciones locales y distribuidas
- Transacciones y escalabilidad
- Integración de objetos y transacciones
- Transacciones explícitas
- Transacciones implícitas
- El costo de viajar por la red
- Un problema complejo
- Una posible solución
- Una mejor solución
- De nuevo, el costo de viajar por la red
- Processors
- Processors como servicios
- Implementación del servicio TransferenciaMúltiple
- Llamadas concurrentes
- Resumen
Capítulo II - Aislamiento, locks y deadlocks
- Aislamiento, locks y deadlocks
- Correctez vs. Rendimiento
- Los cinco niveles de aislamiento
- Implementación del aislamiento a través de bloqueos (locking)
- Well-formed y Two-phase
- Elección del nivel de aislamiento
- Guías para niveles de aislamiento
- Especificación de un nivel de aislamiento
- Niveles de aislamiento y transacciones locales en ADO.NET
- Deadlocks
- Cómo lidiar con los deadlocks
- Resumen