Existem duas razões pelas quais isso aconteceria.
Um, que espero que você possa descartar, é uma pessoa ou um script ordenando que faça isso. Por exemplo, alguém enviando um comando para /sys/vm/drop_caches
.
O outro é se essa memória é necessária para algum outro propósito. Se um aplicativo exigir muita memória, o kernel fornecerá ao aplicativo essa memória, reduzindo o cache conforme necessário. Quando a aplicação é feita com essa memória, ela ficará livre. Ele só será preenchido com dados em cache ao longo do tempo.
Pode haver algumas coisas que você pode fazer se esse for o caso. Por exemplo, se o uso de memória estiver acontecendo porque você está tentando processar quatro solicitações de uma só vez, convém reconfigurar para fazer duas solicitações de uma vez no máximo. Se isso permitir que você mantenha mais dados no cache, poderá ser uma vitória geral no desempenho.