복붙노트

[MONGODB] 방법 MongoDB를 사용하는 캐싱을 해제?

MONGODB

방법 MongoDB를 사용하는 캐싱을 해제?

MongoDB를 내가 오랜 시간 사용할 때, 나는 메모리를 덜 우분투에서 명령 '무료 -m'와 캐싱 사용을 많이 남긴 한 참조 메모리 매핑 된 파일을 사용합니다. 그리고 여전히 MongoDB를에게 캐싱을 죽일 비용이 많이 들까 요? 어떻게 캐싱을 해제 할 수 있습니다?

해결법

  1. ==============================

    1.MongoDB를은 (적어도 것) 사용 가능한 메모리를 많이 사용하지만, 실제로는 메모리 해제하도록 지시하는 OS의 VMM에 그것을 잎합니다 (MongoDB를 워드 프로세서에서 캐시를 참조하십시오.)

    MongoDB를은 (적어도 것) 사용 가능한 메모리를 많이 사용하지만, 실제로는 메모리 해제하도록 지시하는 OS의 VMM에 그것을 잎합니다 (MongoDB를 워드 프로세서에서 캐시를 참조하십시오.)

    당신은 MongoDB를 다시 시작하여 일체의 메모리를 해제 할 수 있어야한다.

    그러나 어느 정도 MongoDB를 정말 메모리를 "사용"하지 않습니다.

    서버 메모리 사용량을 점검 MongoDB를 워드 프로세서에서 예를 들어 ...

    MongoDB를 당신은이 두 가지 질문에 좀 더 많은 정보를 찾을 수 있습니다, 해제하는 "페이지"를 결정하기 위해 LRU (최소 최근에 사용한) 캐시 알고리즘을 사용하여 ...

  2. ==============================

    2.3.2부터, MongoDB를 기본 스토리지 엔진으로 WiredTiger을 사용합니다. 이전 버전의 기본 스토리지 엔진으로 MMAPv1을 사용했다.

    3.2부터, MongoDB를 기본 스토리지 엔진으로 WiredTiger을 사용합니다. 이전 버전의 기본 스토리지 엔진으로 MMAPv1을 사용했다.

    WiredTiger으로, MongoDB를이 WiredTiger 내부 캐시와 파일 시스템 캐시를 모두 사용합니다. MongoDB를 3.2에서 WiredTiger 내부 캐시는 기본적으로 하나의 큰를 사용합니다 : RAM의 60 % 1을 뺀 기가 바이트 또는 1 기가 바이트. RAM의 최대 10 GB의 시스템의 경우, 새 기본 설정 또는 3.0 기본 설정으로 동일보다 작이다 (MongoDB를 3.0를 들어, WiredTiger 내부 캐시 사용 1기가바이트 또는 중 큰 설치된 실제 RAM의 절반 중 하나). RAM의 10 GB의 시스템의 경우, 새로운 기본 설정은 3.0 설정보다 더 크다.

    wiredTriggered 캐시를 제한의 .config 파일에 다음 줄을 추가합니다 :

    wiredTigerCacheSizeGB = 1

  3. ==============================

    3.어떤 것은 내 문제였다

    어떤 것은 내 문제였다

    응용 프로그램이 매우 긴 시간에서 머신에 배포하고 있기 때문에 역사적 데이터는 응용 프로그램과 함께 사용되는 데이터베이스의 크기 증가를 일으킨 제거되지 않았다. MongoDB를 런타임 응용 프로그램에 어떤 메모리를 떠나되지 않은 RAM에서 사용 가능한 데이터의 거의 두 배 이상 크기를 차지합니다.

    메모리 상태 데이터를 삭제하기 전에 :

    [루트 @ IP-172-31-1-173 로그] # 무료 -m               총 무료 공유 버프 / 캐시 중고 MEM : 15,630 11,462 146 732 4021 3207 스왑 : 0 0 0

    메모리 상태 데이터가 삭제 한 후 :

    [루트 @의 IP 172-31-1-173을 몽고] # 무료 -m               총 무료 공유 버프 / 캐시 중고 MEM : 15630 5849 5234 788 4545 8763 스왑 : 0 0 0

    WiredTiger으로, MongoDB를이 WiredTiger 내부 캐시와 파일 시스템 캐시를 모두 사용합니다.

    버전 3.2에서 변경 : MongoDB를 3.2에서 시작하여, WiredTiger 내부 캐시는 기본적으로 하나의 큰 사용합니다 :

    60% of RAM minus 1 GB, or
    1 GB.
    

    RAM의 최대 10 GB의 시스템의 경우, 새 기본 설정 또는 3.0 기본 설정으로 동일보다 작이다 (MongoDB를 3.0를 들어, WiredTiger 내부 캐시 사용 1기가바이트 또는 중 큰 설치된 실제 RAM의 절반 중 하나).

    RAM의 10 GB의 시스템의 경우, 새로운 기본 설정은 3.0 설정보다 더 크다.

    파일 시스템 캐시를 통해, MongoDB를 자동으로 WiredTiger 캐시 또는 다른 프로세스에 의해 사용되지 않는 모든 사용 가능한 메모리를 사용합니다. 파일 시스템 캐시의 데이터는 압축됩니다.

    당신 정리하여 기록 데이터가 사용되는 캐시의 크기를 유지하는 경우에도 수리 데이터베이스에 필요합니다.

  4. from https://stackoverflow.com/questions/4468873/how-to-release-the-caching-which-is-used-by-mongodb by cc-by-sa and MIT license