tipos son sirven sirve que para memoria los informatica definicion caracteristicas caché caches cache bueno borrar caching concept

caching - memoria - que son los caches y para que sirven



¿Qué es un caché distribuido? (2)

  1. Sí, la mitad de los datos en el servidor ay la mitad en el servidor b serían un caché distribuido. Existen muchos métodos para distribuir los datos, aunque parece que algún tipo de hash de las claves es más popular.

  2. Los términos servidor y nodo son generalmente intercambiables. Un nodo generalmente es una sola unidad de alguna colección, a menudo llamada clúster. Un servidor generalmente es una sola pieza de hardware. En erlang, puede ejecutar varias instancias del tiempo de ejecución de erlang en un solo servidor, y así tendría múltiples nodos de erlang ... pero, en general, le gustaría tener un nodo por servidor para una programación más óptima. (Para plataformas y lenguajes no distribuidos, debe gestionar sus procesos en función de sus necesidades).

  3. Si un servidor se cae, y es un servidor de caché, entonces los datos tendrían que venir de su fuente original. EG: una memoria caché generalmente es una base de datos basada en memoria diseñada para una recuperación rápida. Los datos en la memoria caché se mantienen mientras se usen regularmente, y eventualmente se purgarán. Pero para los sistemas distribuidos donde necesita persistencia, una técnica común es tener múltiples copias. Por ejemplo: tiene los servidores A, B, C, D, E y F. Para los datos 1, los pondría en A, y luego una copia en B y C. Couchbase y Riak hacen esto. Para los datos 2, podría estar en B, y luego copias en C y D. De esta manera, si un servidor cae, usted todavía tiene dos copias.

Estoy confundido sobre el concepto de caché distribuida. Sé un poco qué es de la búsqueda de Google. Un caché distribuido puede abarcar varios servidores para que pueda crecer en tamaño y en capacidad transaccional. Sin embargo, realmente no entiendo cómo funciona ni cómo distribuye los datos.

Por ejemplo, digamos que tenemos los servidores de memoria de datos 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 y 2 A y B. Si usamos caché distribuida, entonces una de las posibles soluciones es que los datos 1, 3, 5, 7, 9 se almacenan en el servidor de caché A, y 2, 4, 6, 8, 10 se almacenan en el servidor de caché B.

Entonces, ¿es correcto o no lo entendí?

La segunda pregunta es que generalmente escuché el nodo de servidor de palabra. ¿Qué es? En el ejemplo anterior, el Servidor A es un nodo servidor, ¿verdad?

Tercera pregunta, si un servidor (digamos el Servidor A) falla, ¿qué podemos hacer al respecto? Quiero decir, si mi ejemplo anterior es correcto, no podemos obtener los datos 1, 3, 5, 7, 9 de la caché cuando el Servidor A está inactivo, entonces, ¿qué podría hacer el Servidor de caché en este caso?


He estado utilizando soluciones de almacenamiento en caché distribuidas desde hace bastante tiempo (NCache, AppFabric, etc.) y voy a responder las tres preguntas según mi experiencia con el almacenamiento en caché distribuido.

1: la solución de caché distribuida le permite mantener los datos en todos los servidores creando un clúster de caché. Digamos que tiene 2 servidores de caché (nodos de servidor) y ha agregado 10 elementos en su caché. Lo ideal es que haya 5 elementos en ambos nodos del servidor, ya que la carga de datos se distribuye entre la cantidad de servidores en su clúster de caché. Esto generalmente se logra con la ayuda de hash y algoritmos inteligentes de distribución de datos. Como resultado, su carga de solicitud de datos también se divide entre todos los servidores de caché y logra un crecimiento lineal en capacidad transnacional a medida que más servidores en el clúster de caché.

2: un clúster de caché puede contener muchas máquinas de servidor que también se llaman nodos de servidor. Sí, el Servidor A es un nodo servidor o una máquina servidor en su ejemplo.

3: Normalmente, el sistema de caché distribuido es muy confiable con soporte de replicación. Si uno o más servidores se desactivan y la replicación se activó, no habrá pérdida de datos ni tiempo de inactividad. NCache tiene diferentes tipologías para abordar esto, como la topología replicada y la partición de topología de réplica, donde los datos de cada servidor se replican también en el otro servidor. En caso de que un servidor se caiga, los datos replicados de ese servidor estarán disponibles automáticamente desde el nodo del servidor superviviente.

En su ejemplo, los datos del servidor A (1, 3, 5, 7, 9) se replican en el servidor B (2, 4, 6, 8, 10) y viceversa. Si el servidor A se cae, los datos del servidor A que está presente en el Servidor B estarán disponibles y se usarán desde allí para que no se pierda ningún dato. Entonces, si el servidor A se cae y la aplicación solicita datos (1), estos datos serán recuperados del Servidor B ya que el Servidor B contiene una copia de seguridad de todos los datos del Servidor A. Esto se realiza sin interrupciones y se gestiona automáticamente mediante el almacenamiento en caché sistema.