O que acontece com o redis quando seu servidor fica sem RAM livre?

1

Digamos que você esteja hospedando redis em um pequeno servidor com pouca RAM.

O que acontece se houver muitos dados e toda a RAM acabar?

Os redis morrem? Ou continua operando?

    
por Alex 12.05.2011 / 11:21

2 respostas

1

Primeiro, ele tentará mover alguns dados menos usados para fora da RAM e para o espaço de arquivos de troca (se você tiver algum). Depois disso, o killer OOM (Out Of Memory) começará a encontrar processos que pareçam menos importantes com base em um conjunto de regras genéricas e a eliminá-los para que o sistema possa sobreviver. Se isso falhar, eventualmente, o sistema apenas irá atolar. Além disso, as coisas podem dar errado se o assassino da OOM decidir matar algo importante para você ou a função da máquina.

    
por 12.05.2011 / 11:34
1

Depende de como você o configura. Você sempre pode usar ulimit para limitar os recursos disponíveis para o processo de atualização, mas você deve verificar como os redis usam a memória em primeiro lugar.

Você pode configurar redis para limitar a quantidade de memória RAM que será usada antes de mover para o arquivo de troca.

Aqui está uma postagem no blog sobre como a memória virtual funciona em redis.

    
por 12.05.2011 / 18:23