it-swarm-korea.com

파일의 캐시가 대안이 될까요?

일단 자체 CMS가있는 회사에서 일하고 데이터를 파일로 캐시하는 데 사용 했으므로 기본적으로 시스템은 캐시 파일이 존재하는지 확인하고 그렇지 않으면 데이터베이스로 이동하여 데이터를 가져와 파일에 저장하고 그런 다음 사용자에게 보여줍니다 (기본 캐시 항목). 이로 인해 데이터베이스에 대한 연결이 줄어 들었습니다.

이것이 Drupal에 대한 좋은 옵션인지 또는 이러한 캐싱 방법에 문제가 있는지 알고 싶습니다.

6
João Guilherme

Anschauung이 언급했듯이 Boost 를 사용하여 정적 페이지 캐시를 만들 수 있습니다. Boost는 페이지의 전체 HTML을 복사하고 해당 HTML을 특정 디렉토리의 디스크에 정적 파일로 저장합니다. 일련의 재 작성 규칙은 웹 서버가 먼저 각 요청에 대해 정적 HTML 파일을 찾고 발견 된 경우 해당 파일을 제공하도록합니다. 그렇지 않은 경우 정상적인 Drupal 요청은 PHP를 통해 발생합니다. 정적 파일을 통해 제공되는 요청은 정말 빠르지 만 PHP 및 데이터베이스는 완전히 우회.

Boost는 캐시 백엔드를 대체하지 않으며 Drupal은 Boost에서 생성 한 정적 HTML 파일에서 누락이 발생하는 경우에도 데이터베이스의 캐시 테이블을 계속 사용합니다. 캐시 백엔드에서 직렬화 된 객체를 메모리에 저장하는 memcache 를 살펴볼 수 있습니다. Memcached는 서버에서 데몬으로 실행되며 TCP를 통해 연결될 수 있습니다. 환경의 서버 수 및

데이터베이스가 캐시 테이블을 메모리에 보관하도록 할 수 있습니다 (적어도 MySQL에서는). 세부 사항에 대해서는 잘 모르겠습니다.

Drupal 7. APC 모듈은 APC opcode 캐시와 통합됨)를 실행하는 경우 APC 모듈을 모두 사용할 수 있습니다. Drupal의 캐시 백엔드로 사용합니다. APC는 TCP 연결 오버 헤드가 없기 때문에 특정 시나리오에서 memcached보다 빠를 수 있습니다. 각 APC 캐시는 특정 서버에 연결되는 반면, memcached 및 데이터베이스는 여러 프런트 엔드 서버에서 공유 할 수 있습니다 (다시 말하지만 이것은 좋거나 나쁠 수 있음).

14
CalebD

실제로 Boost 모듈은 사용자가 설명하는대로 정확하게 수행합니다. 페이지의 파일 캐시를 만들고 특정 파일이 존재하지 않는 경우 데이터베이스를 다시 확인합니다.

봐주세요 :)

7
anschauung

Boost 모듈이 동일한 방법을 수행하는 동안 Drupal 페이지 캐시 (전체 페이지를 단일 데이터베이스 레코드로 캐시), memcache, 또는 심지어 바니시.

2
Mikey P