nginx 의 cache 로드 프로 세 스

1350 단어 로드nginxcache
cache 로 딩 프로 세 스 가 일정 시간 후에 사라 집 니 다. 이것 은:
cache 로 딩 프로 세 스 의 기능 은 nginx 가 정상적으로 시작 (60 초) 한 후에 디스크 의 마지막 캐 시 대상 을 메모리 에 불 러 오 는 것 입 니 다.
ngx_spawn_process(cycle, ngx_cache_manager_process_cycle,
                      &ngx_cache_loader_ctx, "cache loader process",
                      respawn ? NGX_PROCESS_JUST_SPAWN : NGX_PROCESS_NORESPAWN);
static ngx_cache_manager_ctx_t  ngx_cache_loader_ctx = {
    ngx_cache_loader_process_handler, "cache loader process", 60000
};

이 곳 의 반전 함 수 는 ngx 임 을 알 수 있 습 니 다.cache_loader_process_handler()
이벤트 대상 의 시간 초과 시간 은 60000 밀리초 입 니 다.
static void
ngx_cache_loader_process_handler(ngx_event_t *ev)
{
    ngx_uint_t     i;
    ngx_path_t   **path;
    ngx_cycle_t   *cycle;

    cycle = (ngx_cycle_t *) ngx_cycle;

    path = cycle->paths.elts;
    for (i = 0; i < cycle->paths.nelts; i++) {

        if (ngx_terminate || ngx_quit) {
            break;
        }

        if (path[i]->loader) {
            path[i]->loader(path[i]->data);
            ngx_time_update();
        }
    }

    exit(0);
}

 여기 loader 함수 ngxhttp_file_cache_loader 함수.
이 함 수 는 디스크 캐 시 관리 대상 이 대응 하 는 경로 에 있 는 기 존 캐 시 파일 에 해당 하 는 레 드 블랙 트 리 를 만 듭 니 다.
nginx 가 마지막 캐 시 파일 을 계속 사용 할 수 있 도록 합 니 다.

좋은 웹페이지 즐겨찾기