EC2 인스턴스에서 데이터베이스가 느려졌다면..

안녕하세요,최근 저의 URL단축서비스가 굉장히 느려지는 현상이 있었습니다. 처음 설계할 당시에는 느리지 않았는데 무슨 이유인지 갑작스럽게 느려져서 원인을 파악하고 있었습니다. 이럴땐 서비스를 정지하고 원인을 찾으면 좀 쉬울텐데 24시간 작동해야 하는 서비스 특성상 쉽지 않았습니다 (테이블에 담긴 120-130만건 정도 되는 데이터가 문제인가 싶었습니다) 새롭게 INSERT하는 것이 매우 느렸고, SELECT와 UPDATE는 그나마 쓸만할 정도였습니다(새로운 링크 생성까지 약 5-6초 […]

계속 읽기

쿼리 조회를 빠르게 수행하는 팁

안녕하세요, 서비스를 운영하다보면 시간이 지날수록 여러가지 상황이 발생하게 됩니다.정상적으로 잘 작동했던 쿼리가 시간이 지날수록 느려지는 경우도 있구요. 서비스를 관리하다가 이상현상(?)으로 Index가 제대로 적용이 안된 경우도 있었고(서버를 이전하다가 그런 경험을 한 적이 있습니다), 그 외에도 예측 못하는 다양한 경우가 있었습니다.그래서 몇가지 쿼리 조회를 빠르게 수행하는 방법을 소개하려고 합니다. 느린 쿼리를 Explain 을 통해 조회하세요. expain은 쿼리를 […]

계속 읽기

[SQL] 일부 값만 수정하고 새로운 로우(record)로 옮겨 쓰기

기록이 중요합니다. 실제로 서비스를 하게 된다면 사용자가 게시물을 수정할 때마다 (혹시 모를 수사 목적으로)기록을 남겨 둬야 하는데 다른 테이블에 따로 분류하는 것도 있지만 수정사항이 있다면 해당 내용을 새로운 id 등으로 쓰고 덮는 쪽이 개발하는데에 좀 편합니다. 인터넷에 돌아다니는 자료는 정말 많지만 이해하기가 힘들게 되어있는 글이 많아서(내가 이해를 못해서) 몇 자 남겨둡니다. 도움이 되시길… 일부 값만 […]

계속 읽기