2011-02-23 14 views

Respuesta

23

Caché: almacene valores de uso frecuente, generalmente porque la búsqueda y/o creación no son triviales. p.ej. si se utiliza con frecuencia una tabla de búsqueda de una base de datos, o si los valores se leen desde un archivo en el disco, es más eficiente mantenerlo en la memoria y actualizarlo periódicamente.

Un caché solo administra la duración del objeto en el caché, pero no impone la semántica en lo que se almacena en el caché. Una memoria caché tampoco crea los elementos, solo almacena objetos.

Pool - término para describir un grupo de recursos que son administrados por el grupo en sí. p.ej. (Base de datos) Conjunto de conexiones: cuando se necesita una conexión, se obtiene del grupo y, cuando termina, se devuelve al grupo.

El grupo en sí mismo maneja la creación y destrucción de los objetos agrupados, y administra cuántos objetos se pueden crear al mismo tiempo.

Las agrupaciones se suelen utilizar para reducir el acceso de sobrecarga y acelerador a los recursos. No querría que cada solicitud de servlet abriera una nueva conexión a la base de datos. Porque entonces tiene una relación 1: 1 entre solicitudes activas y conexiones abiertas. La sobrecarga de crear una destrucción de estas conexiones es un desperdicio, además de que podría abrumar fácilmente a su base de datos. al usar un grupo, estas conexiones abiertas se pueden compartir. Por ejemplo, 500 solicitudes activas podrían compartir tan solo 5 conexiones de bases de datos, dependiendo de cuánto tiempo una solicitud típica necesita la conexión.

Grupo de caché: parece describir la cantidad de caché (independientes) que existen. P.ej. una aplicación asp.net tiene 1 caché por dominio de aplicación (el caché no se comparte entre las aplicaciones asp.net). Literalmente, un grupo de cachés, aunque este término parece ser usado raramente.

6

El almacenamiento en memoria caché está guardando un valor/objeto para su reutilización, normalmente para ahorrar recursos.

Wikipedia dice:

una memoria caché es un componente que almacena de forma transparente los datos para que las futuras solicitudes de datos que se pueden servir con mayor rapidez.

El sondeo es similar, donde tiene una cantidad de tales objetos (un grupo): una vez que un objeto ha sido retirado del grupo y utilizado, se devuelve al grupo para su reutilización posterior.

Wikipedia dice:

Una piscina en la informática es un conjunto de recursos inicializados que se mantienen listos para su uso, en lugar de asignarse y destruidos bajo demanda.

2

Ambos tienen como objetivo la reutilización de objetos. La distinción generalmente se dibuja a lo largo de statefulness; un conjunto es una colección de objetos sin estado, un caché es uno de los objetos con estado. Ver this explanation.

3

El almacenamiento en caché generalmente se refiere a mantener una copia estática de un dato para su recuperación rápida (suponiendo que la recuperación o el cálculo del valor es costoso).

La agrupación generalmente se refiere a mantener una cantidad de recursos alrededor para un uso rápido (suponiendo que la creación y/o eliminación de estos recursos es costosa).

0

Tanto para reutilizar como para reducir la huella de memoria del proceso (eliminando también la sobrecarga de creación de objetos). Una diferencia notable es que un conjunto utiliza los mismos objetos una y otra vez durante la vigencia de su contexto, donde en un caché (al menos en LRU) desaloja objetos para dejar espacio a los creados recientemente.

Otra diferencia sería la respuesta a la siguiente pregunta. ¿Le gustaría que le devolvieran un objeto específico o cualquier objeto estaría bien? La respuesta deja en claro lo que necesita: caché o grupo.

Cuestiones relacionadas