¿Tiene Redis o el sistema de caché un mecanismo de eliminación por lotes?
Definición oficial de Memcache
Caché de objetos de memoria distribuida, alto rendimiento, código abierto gratuito y amplio
El sistema es de naturaleza universal, pero su propósito Se utiliza para acelerar aplicaciones web dinámicas descargando cargas de bases de datos.
Definición oficial de Redis
Redis es un almacén de valores clave avanzado de código abierto con licencia BSD. A menudo
se denomina servidor de estructura de datos porque las claves pueden contener cadenas, hashes,
listas, conjuntos y conjuntos ordenados.
Mismo copyright
Todos utilizan el protocolo BSD, los proyectos que lo utilizan pueden ser utilizados por usuarios comerciales y el código fuente se puede modificar sin publicar el segundo código modificado.
Tipos de datos
Redis tiene tipos de datos enriquecidos y admite set liset y otros tipos.
Memcache admite tipos de datos simples y requiere que el cliente maneje objetos complejos por sí mismo.
Persistencia
Redis admite el almacenamiento persistente de datos.
Memcache no admite la persistencia de datos.
Almacenamiento distribuido
Redis admite el modo de replicación maestro-esclavo.
Memcache se puede distribuir mediante hash consistente.
Los valores son diferentes.
Memcache es una memoria caché, la longitud de la clave es inferior a 250 caracteres y el almacenamiento único es inferior a 1 M, por lo que no es adecuado para máquinas virtuales.
Consistencia de datos diferente
Redis utiliza un modelo de subproceso único para garantizar que los datos se envíen en orden.
Memcache requiere cas para garantizar la coherencia de los datos. CAS (conjunto de suma de comprobación) es un mecanismo para garantizar la coherencia de la concurrencia y pertenece a la categoría de "bloqueo optimista". El principio es muy simple: obtenga el número de versión, opere y compare el número de versión; es consistente, operelo. Si es inconsistente, cancele cualquier operación.
Utilización de la CPU
El modelo de subproceso único de Redis solo puede usar una CPU y puede abrir múltiples procesos de Redis.
Resumen 2:
En 1. En Redis, no todos los datos se almacenan siempre en la memoria. Ésta es la mayor diferencia en comparación con Memcached.
2.Redis no solo admite datos k/v simples, sino que también proporciona almacenamiento de estructuras de datos como listas, conjuntos y hashes.
3.Redis admite la copia de seguridad de datos, es decir, la copia de seguridad de datos en modo maestro-esclavo.
4.Redis admite la persistencia de datos y puede guardar datos en la memoria en el disco y cargarlos nuevamente al reiniciar.
Personalmente creo que la diferencia más esencial es que Redis tiene características de base de datos en muchos aspectos, o es un sistema de base de datos, mientras que Memcached es solo un simple caché K/V.
Resumen 3:
La diferencia entre redis y memecache es:
1 Modo de almacenamiento:
memecache
Almacena todos los datos en la memoria y se colgará después de un corte de energía. Los datos no pueden exceder el tamaño de la memoria.
Redis se almacena parcialmente en el disco duro, lo que puede garantizar la durabilidad de los datos.
2. Tipo de soporte de datos:
Redis tiene más soporte de datos que memecache.
3. El modelo subyacente utilizado es diferente:
La nueva versión de redis construye directamente la propia VM.
Mecanismo, debido a que el sistema general llama a funciones del sistema, perderá una cierta cantidad de tiempo para moverse y solicitar.
4. Diferentes entornos operativos:
Actualmente, Redis solo es compatible oficialmente con LINUX.
Conectarse en línea, eliminando así el soporte para otros sistemas, lo que nos permite centrarnos mejor en optimizar este entorno del sistema, aunque un equipo de Microsoft escribió más tarde un parche para ello. Pero no en el maletero.
Memcache solo se puede usar como caché, caché
Se puede implementar el contenido de redis, que es un poco similar a mongodb, y luego redis también se puede usar como caché y se puede configurar maestro-esclavo.