Copy
<?php
$sql_common = " and mb_id != '{$config['cf_admin']}' ";
$rank_rows = 15; //출력 수
$sql = " select * from {$g5['member_table']} where mb_point > '{$row['mb_point']}' {$sql_common} order by mb_point desc, mb_today_login desc limit {$rank_rows} ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
$rank = number_format($i + 1);
//$rank_name = get_sideview($row['mb_id'], $row['mb_nick'], $row['mb_email'], $row['mb_homepage']);
$rank_name = $row['mb_nick'];
$point = number_format($row['mb_point']);
if ($rank == 1) {
$rank_bg = ' rank_bg1';
} else if ($rank == 2) {
$rank_bg = ' rank_bg2';
} else if ($rank == 3) {
$rank_bg = ' rank_bg3';
} else {
$rank_bg = '';
}
?>
<li><span class="rank_bg<?php echo $rank_bg; ?>"><?php echo $rank; ?></span><?php echo $rank_name; ?><span class="rank_point"><?php echo $point; ?></span></li>
<?php } ?>
메인에 접속시 마다 해당 쿼리를 실행해서
mysql cpu 점유율이 60~70%가 넘어갑니다
그누보드의 캐쉬를 활용할 방법이 없을까요?
|
답변 1개
채택된 답변
+20 포인트
2019-02-07 (목) 16:31:38
만인 g5_member 의 mb_point에 인덱스 안걸려있으면
아래글 확인하시어
https://jojoldu.tistory.com/243
의
"where salary * 10 > 150000;는 인덱스를 못타지만, where salary > 150000 / 10; 은 인덱스를 사용합니다."
처럼 mb_point 에 인덱스 추가하시면 속도향상효과 있을것 같습니다.
답변을 작성하려면 로그인이 필요합니다.