음..


오늘 갑자기 사이트 반응속도가 느리길래..


뭐가 문젠가 싶어서 들여다 보는데..


top 으로 명령어를 때려보니, 스왑까지 풀로 쓰면서(..) CPU와 RAM 을 100% 쓰더군요..

(언젠가 보던 현상인데..)


그래서 서버단에서 할 수 있는 생각할 수 있는건 다 해봤는데도, 좋아지지 않고, 사용율이 떨어질 생각을 안하길래..


top 명령어 사용율을 자세히 보니, mysqld 가 60 ~ 80%를 왔다갔다.. (..)


mariadb 가 뭔가 문제가 터졌구나.. 하면서 역시나 서버 설정을 만지작 만지작..

(왜냐면 지금까지 잘 됬으니까..)


설정을 만지작 거려도 상황이 안좋아지길래, CPU와 RAM을 증설해야하나! 라고 생각하면서 카드를 만지작 만지작 하던 찰라..


혹시 몰라서 슬로쿼리를 살펴봤습니다.


SHOW PROCESSLIST;


위의 명령어를 치고나니, 나오는 엄청난 양의 슬로우 쿼리.. (.. .. ..)


한번 실행에 1분 ~ 3분씩 걸리고 있더군요;;


슬로쿼리의 명령문을 살펴보니..


UPDATE `ci_blocks` SET `ci_blocks`.`ids` = '[]' WHERE `ci_blocks`.`id` = 933224862847397890;


참고로 id 필드는 VARCHAR(40).


explain 을 찍어봤습니다.



업데이트에 index 를 타지 않아!!!


그렇습니다.


index 를 타지 않아서 쿼리가 느렸던거..;;

(단순 SELECT 보다 느린 UPDATE..)


그래서 뭐가 문젠지 살펴보다가, "그리고 보니 varchar 인데 int 타입으로 해도 에러가 안나네?" 하면서 id 를 문자형으로 고쳐줬습니다.


EXPLAIN UPDATE `ci_blocks`
SET `ci_blocks`.`ids` = '[]'
WHERE `ci_blocks`.`id` = '933224862847397890';


문자형으로 고쳐주니 바로 index 를 타게 됩니다!



explain 을 떼고 쿼리를 실행해보니, 1 ~ 3분 걸리던 쿼리가 0.1초 만에 실행이 됩니다.


쌩으로 쿼리 날릴때는 신경써서 따옴표 붇이는데, CI의 Active Record 쓰면서는 딱히 신경 안썼더니, 저런 문제가 발생을 하네요;;


받을때 int 로 받고, 넘길때 (string) 을 해줘서 문자형으로 변형해야만 인덱스를 타다니.. (큿..)


숫자형을 문자형으로 변경만 하고서 지켜보는데, 점유율이 확 떨어지네요.


mysqld 점유율이 5 ~ 10% 왔다갔다 하는거 보면..


ps. 사실 모 사이트 로딩속도가 느려서 한번 봐야지.. 생각만 하고 있었는데..

이렇게 터지네요.


음음..

지금 뒤에서 만들고 있는게 좀 있어서 기존 사이트 관심을 안줬더니, 이런문제가;;


ps2. 지금 안 사실인데, css 와 js 파일이 캐싱이 안되고 있었네요.

이건 또 왜 안되는지 살펴봐야,,

Posted by Pure Ani
,

ラズベリーキューブ まどそふと

白恋サクラ*グラム NanaWind

かりぐらし恋愛 ASa Project

IxSHE Tell HOOKSOFT

調子に乗ってるレイヤーでオタサーの姫を教師の俺が騙してハメ撮りしてみた ぱちぱちそふと黒

幕末 尽忠報国烈士伝 MIBURO インレ

Making*Lovers SMEE

ノラと皇女と野良猫ハート2 -Nora, Princess, and Crying Cat.- HARUKAZE

『ノラと皇女と野良猫ハート2』応援中♪

ピュアソングガーデン PULLTOP

はにデビ! Honey&Devil eufonie

姫繰三六五 HIMEKURI365

姫繰三六五 公式ウェブサイト

はるるみなもに! クロシェット

枯れない世界と終わる花 SWEET&TEA

ハナヒメ*アブソリュート! mirai

死に逝く君、館に芽吹く憎悪 バグシステム

恋するきもちのかさねかた〜かさねた想いをずっと〜 ensemble

Sanguinea-サングイネア- すにぃる

彼女のセイイキ feng

麗華の館 しすたーそふと

カスタムメイドオンライン KISS