그누보드5 게시판이 버벅거리길래 제가 조치해야 된다고 하네요.

그누보드5 게시판이 버벅거리길래 제가 조치해야 된다고 하네요.

QA

그누보드5 게시판이 버벅거리길래 제가 조치해야 된다고 하네요.

본문

그누보드5 게시판이 버벅거리길래 서버관리자한테 문의했더니 아래 답변이 왔습니다.

제가 그누보드5 수정해야 되는데 어떻게 수정해야 되나요.

 

문의주신 시간대에 사용자 접근이 많아 69 서버의 부하량이 높고, CPU 사용률이 높았던 것으로 확인됩니다.
LVS에서 69서버의 분산비중을 낮추고 116서버로의 분산비중을 높인 상태입니다.
해당 시간대 69서버의 부하원인은 MYSQL의 사용량이 일시적으로 늘어나 시스템 자원이 많이 사용되어 발생된 것으로 확인되며,

select * from g5_write_sj1 where wr_parent = '204192' and wr_is_comment = 1 order by wr_comment, wr_comment_reply;

와 같은 쿼리들이 slow 쿼리에 많이 남아 있는 상태입니다.

해당 문제를 근본적으로 해결하기 위해서는 MYSQL 을 이중화하여 분산조치하거나 쿼리 튜닝, 엔진변경등의 조치가 필요할 것으로 보입니다.

 

-------------------------------------

 

INSERT,UPDATE,ALTER,DELETE 등의 쿼리들은 기존과 동일하게 host를 210.112.3.69 로 두시면 되며,
SELECT 쿼리에 대해 210.112.3.119 로 host를 변경해주시면 됩니다.

 

 

위는 서버관리자의 답변인데요. 답변중 SELECT 쿼리에 대해 210.112.3.119 로 host를 변경해주시면 됩니다.​ 이건 어떻게 변경해야 되나요?

 

 

 

이 질문에 댓글 쓰기 :

답변 6

/data/dbconfig.php 열어서 보시면


define('G5_MYSQL_HOST', '210.112.3.69');

아마도 이런식으로 되어 있을거 같습니다... 맞는지요?

 

DB 서버를 느리게 하는 쿼리가 select문이라 해당 쿼리 실행시에만 호스트 정보를

변경 해서 사용해 달라는 겁니다.

 

sj게시판의 204192번 게시글의 댓글에 무슨 문제가 있는듯합니다.

너무 많은 댓글로 인해 발생한 문제일수도 있으니 일단 확인 해 보시고...

 

일단 서버 관리자의 요청에 따른 변경은 해당 쿼리가 실행되는 부분이 뷰 페이지의 댓글 부분인듯 한데요.

/bbs/view_comment.php


// 코멘트 출력
//$sql = " select * from {$write_table} where wr_parent = '{$wr_id}' and wr_is_comment = 1 order by wr_comment desc, wr_comment_reply ";
$sql = " select * from $write_table where wr_parent = '$wr_id' and wr_is_comment = 1 order by wr_comment, wr_comment_reply ";
$result = sql_query($sql);

이곳에 다음처럼 호스트 변경 부분을 추가 해 보세요.


// 코멘트 출력
//$sql = " select * from {$write_table} where wr_parent = '{$wr_id}' and wr_is_comment = 1 order by wr_comment desc, wr_comment_reply ";
$sql = " select * from $write_table where wr_parent = '$wr_id' and wr_is_comment = 1 order by wr_comment, wr_comment_reply ";
// SELECT 호스트 변경 
$connect_db = sql_connect('210.112.3.119', G5_MYSQL_USER, G5_MYSQL_PASSWORD) or die('MySQL Connect Error!!!');
$select_db  = sql_select_db(G5_MYSQL_DB, $connect_db) or die('MySQL DB Error!!!');
$g5['connect_db'] = $connect_db;
$result = sql_query($sql);

 

 

두분 답변해주셔서 감사드립니다;.

 

dbconfig.php 이  파일보니까 말씀처럼 아래처럼 나옵니다.

if (!defined('_GNUBOARD_')) exit;
define('G5_MYSQL_HOST', '210.112.3.69');

 

210.112.3.69 이 부분을 삭제하거나 수정하라는 말씀이신가요?

전 잘 몰라서 구체적으로 어떻게 수정해야되는지 알려주세요.

지우지 마시고 bbs 폴더 들어가셔서 view_comment.php 열어서 아래 코드를 추가해 주세요.
위에 before, after 소스코드 올려 드렸습니다.
보시고 찾아서 한번 해 보세요.
이도 저도 안되시면 비용 지불하시고 제작의뢰나 오투잡에 의뢰 하심 됩니다.


// SELECT 호스트 변경
$connect_db = sql_connect('210.112.3.119', G5_MYSQL_USER, G5_MYSQL_PASSWORD) or die('MySQL Connect Error!!!'); 
$select_db  = sql_select_db(G5_MYSQL_DB, $connect_db) or die('MySQL DB Error!!!'); 
$g5['connect_db'] = $connect_db; 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,674 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT