당신이 이것에 대답하기 전에 나는 서버로드를 높이기에 충분한 인기있는 것을 개발하지 않았습니다. PHP와 몇 가지 최적화 기술을 알고 있지만 지구상에서 방금 착륙 한 외계인으로 나를 처리하십시오.
제대로 작동하면 꽤 많은 사용자를 확보 할 수 있는 PHP 도구를 개발 중입니다. 그러나 프로그램을 완전히 개발할 수는 있지만 엄청난 트래픽을 처리 할 수있는 무언가를 만드는 데는 실마리가 거의 없습니다. 여기에 몇 가지 질문이 있습니다 (이 질문을 리소스 스레드로 자유롭게 전환하십시오).
데이터베이스
현재 PHP5에서 MySQLi 기능을 사용할 계획입니다. 그러나 사용자 및 컨텐츠와 관련하여 데이터베이스를 어떻게 설정해야합니까? 실제로 여러 데이터베이스 가 필요 합니까? 현재 모든 것이 하나의 데이터베이스로 뒤죽박죽되었습니다. 사용자 데이터를 하나의 실제 콘텐츠로 다른 것으로, 마지막으로 핵심 사이트 콘텐츠 (템플릿 마스터 등)를 다른 데이터베이스로 확산시키는 것을 고려하고 있었지만. 이것에 대한 나의 추론은 다른 데이터베이스에 쿼리를 보내면 하나의 데이터베이스 = 3로드 소스로 데이터베이스에 대한로드를 완화한다는 것입니다. 모두 동일한 서버에있는 경우에도 여전히 효과적입니까?
캐싱
페이지를 작성하고 변수를 교체하는 데 사용되는 템플릿 시스템이 있습니다. 마스터 템플릿은 데이터베이스에 저장되며 템플릿을 호출 할 때마다 캐시 된 사본 (html 문서)이 호출됩니다. 현재이 템플릿에는 두 가지 유형의 변수 인 정적 변수와 동적 변수가 있습니다. 정적 변수는 일반적으로 페이지 이름, 사이트 이름, 자주 변경되지 않는 것입니다. 동적 변수는 각 페이지로드에서 변경되는 것입니다.
이것에 대한 내 질문 :
다른 기사에 대한 의견이 있다고 가정 해보십시오. 더 나은 해결책은 페이지를로드 할 때마다 간단한 주석 템플릿을 저장하고 (DB 호출에서) 주석을 렌더링하거나 주석 페이지의 캐시 된 사본을 HTML 페이지로 저장하는 것입니다-주석이 추가 / 편집 / 삭제 될 때마다 페이지가 다시 캐시됩니다.
드디어
PHP에서 고부하 사이트를 운영하기위한 팁 / 포인터가 있습니까? 사용 가능한 언어 인 것이 확실합니다-Facebook 및 Yahoo! 우선 순위를 높이십시오.하지만주의해야 할 경험이 있습니까?