Depende principalmente de su escenario de aplicación. ¿Qué tipo de consistencia necesitas?
Creo que el Capítulo 7 del siguiente libro cubre los principios de consistencia:
Sistemas distribuidos: Principios y paradigmas 2ª edición, Andrew Tannenbaum y Maarten van Steen, Prentice Hall, 2007
- ¿Cuáles son sus predicciones para la industria de desarrollo de software en los próximos 5 años?
- ¿Por qué a los diseñadores de productos generalmente se les da la responsabilidad de la gestión del producto y no a los desarrolladores de software?
- Cómo convertirse en uno de los principales desarrolladores de software al 40%
- ¿Puedo convertirme en desarrollador de software si me siento muy incómodo cuando la gente lee y critica mi código fuente?
- ¿Qué va a tener más demanda en los próximos 5-10 años en la industria del juego? ¿Diseñadores de juegos, desarrolladores de software o artistas?
En resumen: dependiendo de lo que esté almacenando en caché, puede o no estar bien si un usuario obtiene una respuesta basada en datos obsoletos. Si no veo un artículo en un sitio web de noticias 1 segundo después de su publicación, podría estar bien. Si no veo el saldo actual de mi cuenta bancaria, no tanto.
Lo que he encontrado que es un factor importante al implementar su propia caché es el tamaño de los objetos. Si son todos del mismo tamaño, ¡genial! Puede asumir un número fijo de objetos que caben en su caché. De lo contrario, tendrá que lidiar con todo tipo de problemas, como la fragmentación. Alternativamente, puede dividir los objetos en trozos, pero nuevamente, esto puede o no funcionar dependiendo de su aplicación.