drupal 7을 실행하기 위해 4g의 메모리로 서버를 구성하는 방법


9

4GB의 메모리가있는 새 서버에 Drupal 7을 설치하고 있습니다. 제대로 구성하는 방법, MySQL에 제공 할 메모리 양, PHP에 제공 할 메모리 양에 대한 힌트를 얻고 싶습니다. 내가 찾은 한 가지는 Zend 서버에서 Drupal 7을 실행하는 것이 일반적인 Apache 서버에서 실행하는 것보다 3 배 빠르다는 것입니다. (필자는 opcode 캐싱과 관련이 있다고 생각합니다. devel 모듈에서는 메모리의 1/3을 사용하는 것으로 나타났습니다.

구성을 나와 공유 할 수 있습니까?

답변:


5

Drupal7 Data가 이미있는 경우 준비 환경에로드하고 보유한 데이터 양에 따라 일부 버퍼 크기 조정을 수행해야합니다.

1 단계) 먼저 데이터 세트의 버퍼 크기를 계산해야합니다 .

2 단계) 권장 크기가 설치된 RAM의 75 % (3GB의 경우)를 초과하면 필요한 버퍼를 3GB로 제한하십시오.

3 단계) InnoDB 데이터가 있고 innodb_file_per_table을 활성화하지 않은 경우 각 테이블을 자체 물리적 테이블 스페이스로 분할하여 InnoDB를 정리해야합니다 (한 번만 수행하면 됨) .

이 작업을 완료 한 후 6 개월마다이 구성 감사 (1 및 2 단계)를 수행하여 적절한 MySQL 캐싱을 갖추어야합니다.

흥미롭게도, 나는 이것과 비슷한 질문을하고 2011 년 4 월 15 일에 대답했습니다 .


4

볼거리 :

읽을 기사 :

Rackspace 's : nginx 및 boost를 사용하여 클라우드에 Drupal을 배포 하면 많은 아이디어를 얻을 수 있습니다.

opcode 캐싱에 대한 작은 따옴표 :

APC를 opcode 캐시로 사용합니다. 이렇게하면 모든 페이지로드시 서버가 PHP 코드를 다시 컴파일하지 않아도됩니다. 또한 모든 것이 RAM에 쉽게 들어갑니다 (일반적으로 APC는 128MB의 RAM을 제공합니다). CPU 사용량이 급격히 줄어 듭니다. 로그인 한 사용자는 이제 사이트를 훨씬 빠르게 탐색 할 수 있습니다. 그러나 여전히 제한된 수의 핸들 만 처리 할 수 ​​있습니다. 우리는 조금 더 잘할 수 있습니다. 캐시에 갈 때마다 MySQL을 쿼리하는 대신 이러한 테이블을 메모리에 저장할 수 있습니다. 여기 memcached와 cacherouter 모듈이 있습니다.


2

mysql 디렉토리에서 my_huge conf로 시작했습니다. 또한 혼합에 Varnish 캐시를 추가했습니다. 이미 알고 있듯이 Zend는 성능을 향상시킵니다.

며칠 동안 실행 한 후 mysqltuner 스크립트를 실행하고 주로 임시 테이블 캐시에 대한 일부 권장 사항을 수행했습니다.


1

사이트의 크기에 따라 memcached도 볼 수 있습니다. 이것은 mysql과의 리소스를 놓고 경쟁하지만 부하를 줄일 수 있습니다.


실제로 memcached가 충분히 크면 InnoDB 버퍼 풀과 MyISAM 키 캐시를 모두 축소 할 수 있습니다. 그렇게하면 memcached는 mysql과 경쟁하지 않지만 mysql은 기본 데이터베이스가 아닌 데이터 도관으로 memcached를 보완합니다. memcached를 먼저 제안하는 +1 !!!
RolandoMySQLDBA
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.