Bem, você tem praticamente todo o tempo acima de 8G ou livre (amarelo, "não usado") ou como um cache (azul escuro). Na minha opinião, o seu limite superior para alocar para o memcached é talvez 6GB (dar ou receber), o que ainda permitirá bastante espaço para outros processos e algum cache de disco sem risco real de troca. Pode-se também argumentar que você poderia alocar mais. É uma questão de gosto e os benefícios do desempenho real dependerão da sua aplicação específica.
Lembre-se de que, se você disser ao memcached para usar até 6 GB de memória, ele não usará muito, a menos que você armazene 6G nele. Ele consumirá apenas 1 GB se você armazenar apenas 1 GB, mesmo que o limite seja de 6 GB. Eu recomendo que você adicione o memcached ao seu monitoramento, e fique de olho na estatística bytes
do memcached e limite o uso da memória de acordo para garantir que o sistema não fará nada inesperado se houver uma surpresa de usuários.
Do shell, você pode usar free
para determinar o uso de memória, e ele dirá algo assim:
total used free shared buffers cached
Mem: 4060096 3775976 284120 0 270828 1899720
-/+ buffers/cache: 1605428 2454668
Swap: 577528 0 577528
Livre é a memória não usada, o cache é o cache de disco. A memória livre será usada como um cache de disco ao longo do tempo, portanto, é bastante seguro considerar a memória usada como um cache como gratuita, mesmo se estiver sendo usada para algo útil no momento.