it-swarm-korea.com

더 나은 사이트 및 데이터베이스 성능

저는 Drupal 커뮤니티 사이트에서 작업 중이며 다음 사항에 대해 질문하고 싶습니다.

  1. Drupal 사이트를 더 안전하게 만들려면 어떻게해야합니까?

  2. 사이트에 많은 방문자와 사용자가 있고 동시에 데이터베이스와 많은 상호 작용이있을 때 내 사이트가 가능한 빨리 작동하도록하려면 어떻게해야합니까? 이 상황에서 데이터베이스를 일관성있게 유지하려면 어떻게해야합니까?

  3. Drupal 서버 부하가 높을 때 작동하도록 구성하려면 어떻게해야합니까? 서버 하드웨어가 부하가 높을 때 작동하도록 구성하려면 어떻게해야합니까?

5

1-보안 문자 및 스팸 필터링을 사용합니다. Mollom은 시작하기에 좋은 곳입니다. 강화에 대한 정보도 있습니다 Drupal drupal 핸드북, 즉 http://drupal.org/writing-secure-code) .

2-우선, Drupal과 함께 제공되는 성능 모듈을 켭니다.

3-이것은 큰 질문입니다. Context HTTP Headers , 백악관 Drupal 팀에서 제공 한 모듈)에 대한 좋은 소식을 들었습니다. Caching : Moduls에서 비교표를 찾을 수 있습니다. Drupal scale .

6
d3l3t3m3

여기에 엄청난 질문을 하셨는데,이 텍스트 상자에있는 공간에서는 완전히 답할 수 없었습니다. 대답은 성능 조정이 항상 작업 부하에 따라 다르며 사용자 지정해야한다는 것입니다. 보안은 그 자체로도 엄청난 주제입니다. 많은 사람들이 이러한 질문을하기 때문에 이에 대한 답을 찾는 가장 좋은 방법은 몇 가지 리소스를 알려주는 것입니다.

  1. Drupal 보안 메일 링리스트에 등록하십시오. 여기 목록을 볼 수 있으며 취약점이 발견 될 때마다 이메일로 알림을 받도록 등록 할 수 있습니다. drupal.org에 로그인하고 프로필에서 편집을 클릭 한 다음 내 뉴스 레터로 이동하여 보안 공지를 확인하면됩니다. 또한 개발중인 경우 보안 코드 작성 필수- 당신은 또한 당신의 서버의 보안에 무슨 일이 일어나고 있는지 주시해야합니다. 대부분의 리눅스 배포판에는 최신 보안 상황에 대한 정보를 제공하는 이메일 목록이있을 것입니다. Drupal과는 관련이없는 대규모 토론이므로.

  2. & 3. 분명히 모든 캐싱 옵션을 켜십시오 Drupal 관리자 페이지의 성능 섹션에서 제공합니다. Drupal 페이지 서버 튜닝 고려 사항 정말 훌륭하고 실용적인 정보를 많이 제공 할 것입니다. 또한 APC 많은 Drupal 개발자는 거의 즉각적으로 개선 할 수 있습니다. PHP 실행 시간. 마지막으로 데이터베이스를 최적화하려면 사이트에서 실행중인 쿼리를 확인하고 MySQL describe을 사용하는 것이 좋습니다. 무슨 일이 일어나고 있는지 확인하고 느린 지점에 색인을 추가하는 명령. 이에 대한 자세한 정보는 here .

6
Frederik

트래픽이 많은 Drupal 사이트의 경우 현재 저장된 콘텐츠에 맞게 MySQL을 조정해야합니다. Drupal 버전에 관계없이 MySQL 레이어는 구성을 계산할 수 있음 .

모든 Drupal 테이블을 InnoDB 스토리지 엔진으로 변환해야합니다. 데이터에 영향을주는 모든 SQL 문에서 테이블 잠금을 제거합니다.

InnoDB 데이터가 이미 있고 innodb_file_per_table이 활성화되지 않은 경우 각 테이블을 고유 한 물리적 테이블 스페이스로 분할하여 InnoDB를 정리해야합니다 . 적절한 MySQL 튜닝을 수행하는 것이 필수적입니다. 제한된 하드웨어가 있더라도 . 이러한 InnoDB 최적화를 수행하는 많은 시나리오 .

IMHO, 구성 할 데이터 양을 모르면 my.cnf에 대한 좋은 설정을 계획 할 수 없습니다. 프로덕션에서 스테이징 환경으로 현재 데이터 세트를 주기적으로로드하고 최적화를 수행하고 프로덕션 서버의 my.cnf에서 구성 할 번호를 가져와야합니다.

2
RolandoMySQLDBA
  1. 웹 서버 보안에 대한 모든 표준 예방 조치를 읽은대로 Drupal은 (는) 즉시 사용할 수있는 매우 안전해야합니다. 기본 요점은 사용자 입력을 신뢰하지 않습니다. 활성 contrib 모듈을 고수하고 = drupal 핵심 기능, 당신은 이것에 대해 정말로 걱정할 필요가 없지만, 사용자 정의를 코딩하는 경우 사용자 입력이 check plain 및 db_query를 통과하는지 확인하십시오.

  2. 엄청난 질문입니다. Drupal CSS 및 JS 집계, 페이지 캐싱 등과 같은 좋은 기능이 있습니다. 워치 독을 데이터베이스에 쓰는 대신 syslog를 사용하도록 이동하십시오. 적절한 위치에 캐싱을 사용하십시오. 부스트 , 바니시 , memcached , 블록 캐시 . 느린 권장 사항 을 사용하여 페이지 최적화 . 만약 당신이 정말로 진지해 졌다면, 당신의 데이터베이스 서버를 다른 머신으로 옮기는 것을보고 싶을 것입니다.이 목록은 정말로 길어질 수 있습니다. 그러나 2 비트의 Khalid Bahayeldin은 권위자입니다. 특히 읽기 이 프레젠테이션 빠른 승리 아이디어.

  3. 2 번을보세요!

2
cam8001

2 & 3 Drupalize.me 비디오를 볼 수 있습니다 : Drupal Performance & Scalability 또는 다중 웹 서버로 고 가용성을위한 Varnish 구성 와 같은 다른 Lullabots 기사

1
tostinni