글 수 367
1. 이미지 X나 많은 사이트.
KeepAlive Off
무조건 Off! KeepAliveTimeout 을 1 로 잡아도 소용없음.
2. MySQL 접속수
my.cnf
max_connections = 를 메모리가 부족하지 않을정도로 늘려줌.
기본값이 아니라서 찾는데 헤맸지만
show variables like '%conn%' 으로 찾았음.
이것 외에 각종 버퍼를 많이 늘렸음.
slow 쿼리 찾아서 수정하는것도 방법.
(남의것 slow 쿼리 찾아가며 index 만들어주고, 정 답 안나오는건 빼버리고 고생고생...)
3. php pconnect
max_connections 를 400 으로 했다면
php.ini 의 mysql.max_persistent = 300 정도로 해 줌.
여유가 없으면 낭패.
접속 함수에
$conn = mysql_pconnect(*&@#*$);
if(!$conn) { echo '<meta http-equiv="refresh" content="2" />'; exit; }
이런식으로 해서 접속 과중시 약간의 여유를 만들어줌.
300 인데 저런식이면 대박도 초 대박인 사이트임.
4. select count(*) from table
아무 조건없이 저리 쿼리하는데 슬로쿼리에 찍힐경우,
insert, update 가 X나 많은 것임.
이런건 방법 없으므로 count 를 안하는 (수량만 캐시한다던가) 방향으로
프로그램 수정요망.
5. MyISAM 이 빠름. InnoDB 대비 3배 이상 차이남.
InnoDB 가 안정적이지만 속도문제만큼은 어쩔 수 없음.
transaction 을 하려면 쿼리 중간에 MyISAM 이 끼면 안된다고 알고 있음.
때문에 섞어쓰기도 안좋음.
이번에 손댄 이유가 테이블이 몇개 깨졌기 때문인데,
InnoDB 로 바꿨다가 죽는줄 알았음.
6. PostgreSQL 은 이런일 없을거라 굳게 믿고 있음.
(비슷한 규모의 사이트가 없어서 비교불가.)
끝.
KeepAlive Off
무조건 Off! KeepAliveTimeout 을 1 로 잡아도 소용없음.
2. MySQL 접속수
my.cnf
max_connections = 를 메모리가 부족하지 않을정도로 늘려줌.
기본값이 아니라서 찾는데 헤맸지만
show variables like '%conn%' 으로 찾았음.
이것 외에 각종 버퍼를 많이 늘렸음.
slow 쿼리 찾아서 수정하는것도 방법.
(남의것 slow 쿼리 찾아가며 index 만들어주고, 정 답 안나오는건 빼버리고 고생고생...)
3. php pconnect
max_connections 를 400 으로 했다면
php.ini 의 mysql.max_persistent = 300 정도로 해 줌.
여유가 없으면 낭패.
접속 함수에
$conn = mysql_pconnect(*&@#*$);
if(!$conn) { echo '<meta http-equiv="refresh" content="2" />'; exit; }
이런식으로 해서 접속 과중시 약간의 여유를 만들어줌.
300 인데 저런식이면 대박도 초 대박인 사이트임.
4. select count(*) from table
아무 조건없이 저리 쿼리하는데 슬로쿼리에 찍힐경우,
insert, update 가 X나 많은 것임.
이런건 방법 없으므로 count 를 안하는 (수량만 캐시한다던가) 방향으로
프로그램 수정요망.
5. MyISAM 이 빠름. InnoDB 대비 3배 이상 차이남.
InnoDB 가 안정적이지만 속도문제만큼은 어쩔 수 없음.
transaction 을 하려면 쿼리 중간에 MyISAM 이 끼면 안된다고 알고 있음.
때문에 섞어쓰기도 안좋음.
이번에 손댄 이유가 테이블이 몇개 깨졌기 때문인데,
InnoDB 로 바꿨다가 죽는줄 알았음.
6. PostgreSQL 은 이런일 없을거라 굳게 믿고 있음.
(비슷한 규모의 사이트가 없어서 비교불가.)
끝.