좋아하는 다른 운영 체제 GNU/리눅스를 구현하는 메모리 관리는 효율적이고 심지어는 그 이상이다. 하지만 만약 어떤 과정을 먹는 당신의 메모리고 당신이 원하는 명확한 그,리눅스는 방법을 제공합을 세척하거나 분명 ram 캐시입니다.
Linux 에서 캐시를 지우는 방법은 무엇입니까?
모든 Linux 시스템에는 프로세스 나 서비스를 중단하지 않고 캐시를 지우는 세 가지 옵션이 있습니다.1. 페이지 캐시 만 지우십시오.
# sync; echo 1 > /proc/sys/vm/drop_caches
2. 명확한 dentries 및 inodes.
# sync; echo 2 > /proc/sys/vm/drop_caches
3. PageCache,dentries 및 inodes 를 지 웁니다.
# sync; echo 3 > /proc/sys/vm/drop_caches
위의 명령에 대한 설명.
sync 는 파일 시스템 버퍼를 플러시합니다. ";”
로 구분 된 명령은 순차적으로 실행됩니다. 쉘은 시퀀스의 다음 명령을 실행하기 전에 각 명령이 종료 될 때까지 기다립니다. 으로 언급된 커널에서 문서를 작성하 drop_cache 이 깨끗한 캐시 죽이지 않고 어떤 응용 프로그램/서비스,명령에 echo 하고 있는 작업의 파일에 쓰기.
이 있는 경우를 취소하는 디스크 캐시 첫 번째 명령입니다에서 가장 안전한 기업 생산으로"...echo 1 > ….”
"...echo 3 >”
에서 생산할 때까지 당신은 무엇을 하는지 알고 있으로,그것은 명확한 페이지 캐시,dentries 과 아이 노드.
Linux 커널에서 사용할 수있는 Linux 에서 버퍼와 캐시를 확보하는 것이 좋은 생각입니까?
경우 적용하고 있는 다양한 설정 및 확인하려는 경우,그것은 실제로 구현은 특별히 I/O 한 광범위한 벤치마크에,당신은 삭제해야 할 수도 있습 buffer cache. 시스템을 재부팅하지 않고 위에서 설명한대로 캐시를 삭제할 수 있습니다 즉,다운 타임이 필요하지 않습니다.
Linux 는 디스크를 살펴보기 전에 디스크 캐시를 들여다 보는 방식으로 설계되었습니다. 캐시에서 리소스를 찾으면 요청이 디스크에 도달하지 않습니다. 캐시를 정리하면 OS 가 디스크의 리소스를 찾기 때문에 디스크 캐시가 덜 유용 할 것입니다.
또한 그것은 또한 느린 시스템에 대한 몇 초 동안 캐시 청소하고 모든 필요한 리소스에 의해 OS 로드시 디스크 캐시입니다.
이제 우리는 cron 스케줄러 작업을 통해 매일 오전 2 시에 RAM 캐시를 자동으로 지우는 쉘 스크립트를 만들 것입니다. 쉘 스크립트 만들기 clearcache.sh 그리고 다음 줄을 추가하십시오.
#!/bin/bash# Note, we are using "echo 3", but it is not recommended in production instead use "echo 1"echo "echo 3 > /proc/sys/vm/drop_caches"
에 대한 실행 권한 설정 clearcache.sh 파일.
# chmod 755 clearcache.sh
이제 ram 캐시를 지워야 할 때마다 스크립트를 호출 할 수 있습니다.
이제 매일 오전 2 시에 RAM 캐시를 지우도록 cron 을 설정하십시오. 편집을 위해 crontab 을 엽니 다.
# crontab -e
아래 줄을 추가하고 저장하고 종료하여 매일 오전 2 시에 실행하십시오.
0 2 * * * /path/to/clearcache.sh
는 방법에 대한 자세한 내용을 cron 작업할 수 있음을 확인 우리의 문서 11Cron 작업 예약.
프로덕션 서버에서 RAM 캐시를 자동으로 지우는 것이 좋은 생각입니까?
아니! 그것은 아니다. 매일 오전 2 시에 램 캐시를 지우도록 스크립트를 예약 한 상황을 생각해보십시오. 매일 오전 2 시에 스크립트가 실행되고 RAM 캐시를 플러시합니다. 어떤 이유로 어느 날,예상보다 더 많은 사용자가 귀하의 웹 사이트에 온라인 및 서버에서 자원을 추구 할 수있다.
동시에 예약 된 스크립트가 실행되고 캐시의 모든 것을 지 웁니다. 이제 모든 사용자가 디스크에서 데이터를 가져오고 있습니다. 서버 충돌이 발생하고 데이터베이스가 손상됩니다. 그래서 지우기 ram-캐시 필요한 경우에만,그리고 당신의 발 단계를 알려진,다른 당신은화물 컬트 시스템 관리자입니다.
Linux 에서 스왑 공간을 지우는 방법은 무엇입니까?
스왑 공간을 지우려면 아래 명령을 실행하는 것이 좋습니다.
# swapoff -a && swapon -a
또한 추가 할 수 있습니다 위의 명령을 cron 스크립트가 위의 후,이해 모든 관련된 위험이 있습니다.
이제 우리는 것을 모두 결합 위의 명령으로 하나의 명령하는 적절한 스크립트를 명확한 RAM 캐시 스왑 공간입니다.
# echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'OR$ su -c "echo 3 >'/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'" root
모두 테스트 한 후 위의 명령을 우리는 것이 실행하는 명령으로”h”기 전과 후에 스크립트를 실행하고 확인합니다 캐시입니다.