한 호스트에서 일부 데이터 덩어리를 가져와 다른 호스트로 보내는 프로세스가 Linux 시스템에 있습니다. 내가 얻는 청크의 크기를 제어할 수는 없지만 중간/평균 크기에 대한 대략적인 아이디어는 있습니다.
대부분의 시간 동안 블록은 RAM에 들어갈 것이기 때문에 디스크에 데이터를 쓰는 데 드는 비용을 지불하고 싶지 않습니다. 따라서 블록을 다시 읽고 나중에 삭제하기 위해 디스크에 쓰는 것은 낭비입니다.
내가 원하는 것은 RAM 크기에 제한이 있고 제한에 도달하면 디스크로 교체하는 tmpfs와 같은 파일 시스템을 갖는 것입니다.
많은 스왑을 사용하여 tmpfs를 사용해 보았지만 Linux는 tmpfs의 내용을 스왑하는 대신 내 프로그램을 스왑하는 경향이 있어 시스템이 교착 상태에 빠지게 됩니다.
삭제하려는 파일에 대한 디스크 쓰기 비용을 지불하지 않으려면 무엇을 사용할 수 있습니까?
답변1
일반 파일 캐싱은 추가 작업 없이 이 작업을 수행합니다. 또는 설치 제출 옵션을 사용하십시오. 아니면 lvmcache를 사용하세요. 아니면 파이프를 사용하세요.