
내 쿼리
./mysqlslap --user=root --concurrency=50 --iterations=1 --pass=toor -vv --create-schema=db --query="SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) INNER JOIN wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id) WHERE 1=1 AND wp_term_taxonomy.taxonomy = 'category' AND wp_term_taxonomy.term_id IN ('1') AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish') GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 35, 6"
일부 결과
Average number of seconds to run all queries: 68.904 seconds
Minimum number of seconds to run all queries: 68.904 seconds
Maximum number of seconds to run all queries: 68.904 seconds
Number of clients running queries: 50
Average number of queries per client: 1
로드 평균은 32 이상으로 최고조에 달합니다.
테스트 머신의 사양은 다음과 같습니다.
- 4GB RAM
- E6550 @ 2.33GHz(2코어)
- 단일 SATA 디스크
- 데비안 레니 + 아파치 + PHP + MySQL
MySQL 구성을 읽을 수 있습니다.여기. 성능을 향상시키기 위해 조정하는 방법에 대한 조언이 있는 사람이 있습니까? 감사해요.
답변1
- w3tc 또는 wp-super-cache 설치
- 게시물/태그 수를 줄입니다. (Wordpress는 wp_posts 테이블에 게시물의 개정판을 저장한다는 점을 기억하십시오. 따라서 누군가 로그인 상태를 유지하고 자동 저장이 5분마다 실행되는 경우 거기에 꽤 많은 초과 개정판이 있을 수 있습니다.)
- 워드프레스 교체
- 더 빠른 디스크를 얻으세요
나는 직감에 기초하여 구성의 일부 조정 가능 항목에 동의하지 않지만,http://blog.mysqltuner.com/구성 설정에 대한 입력을 제공하는 실행할 수 있는 스크립트가 포함되어 있습니다. 최상의 권장 사항을 제공하려면 mysql을 48시간 이상 실행하는 것이 좋습니다.
- table_definition_cache
- thread_concurrency (쿼드코어에서는 보통 6시에 실행합니다)
- Join_buffer_size(join_buffer로 나열되어 있지만 올바르지 않을 수 있습니다. 상태 표시/변수 표시를 보고 구성 값이 예상대로 적용되는지 확인하세요)
데이터베이스와 동일한 파티션에서 이메일을 실행하지 않는 경우 noatime,nodiratime을 사용하여 파일 시스템을 마운트하는 것을 고려하십시오. 파일 시스템의 다른 조정 가능 설정을 확인하십시오.