2009-11-27 12 views

Respuesta

12

Muchos clientes realizan compresión, pero no ocurre ninguna compresión en el servidor.

La compresión del lado del cliente significa que se envían menos datos a través de la red, pero lo que es más importante, los objetos individuales son más pequeños. Es probable que los objetos más pequeños se almacenen más eficientemente ya que es más probable que caigan en losas más pequeñas.

Incluso si no ve una reducción significativa en el desperdicio de la losa, probablemente debería tener más espacio disponible para más objetos.

+0

¿Qué pasa con las desventajas? ¿UPC? –

+3

Habrá un poco de sobrecarga de la CPU. Si puede medirlo, puede ajustar su algoritmo de compresión en consecuencia. :) – Dustin

1

No tenía conocimiento de las opciones de compresión en los clientes de Memcache.

Sin embargo, creo que si necesita más espacio en el servidor Memcache, debe invertir en más RAM o posiblemente más servidores si es necesario. Comprimir datos costará ciclos de CPU en su servidor web (según el algoritmo y el grado de compresión), y básicamente no creo que valga la pena.

Por cierto, Ram es barato :)

+1

Si la caché se ejecuta en una máquina dedicada, es casi seguro que tenga suficiente potencia de procesamiento no utilizada, por lo que el golpe de la CPU no se notará. Por cierto, he estado utilizando AWS y GCP durante algún tiempo y no puedo estar de acuerdo en que la RAM sea barata en general, y también es más barato duplicar el número de núcleos que duplicar la cantidad de RAM. – user2417480

+0

Ok, eso depende de su configuración, por supuesto. La memoria RAM probablemente fue menos costosa hace 6-7 años que en la actualidad :) –

2

En un clúster de gran escala, E/S se vuelve crítica.

La compresión puede aumentar la carga de la CPU pero, en cambio, reduce la E/S.