SHOW ME THE CODE

9초 쿼리를 500ms로 줄인 MySQL 파티션 프루닝 성능 개선 사례

문제의 시작 여느때처럼 개발중에 스카우터의 xlog에 몇개씩 튀는 점들이 보였다. 해당 API는 할인권 이용내역 조회 API 였는데 특정 쿼리가 무려 9.6초 이상 걸린다는 것을 발견했다. 조건 자체는 아주 단순했다. 특정 주차장, 특정 스토어, 일주일치 날짜 범위, 할인 상태 필터 그리고 결과는 최신 순으로 딱 20건만 가져오는 요청이었다. 데이...

HTTPS 통신 동작 원리 - SSL/TLS 인증서, 대칭키·비대칭키 암호화

현대 사회에 인터넷은 우리 삶의 일부가 되었습니다. 채팅, 메일, 물품구매 등 우리 삶의 대부분의 활동을 인터넷을 통해 이루어 집니다. 저 역시도 앱을 통해 배달을 시키거나, 물건을 주문할 경우가 많습니다. 저의 이러한 요청은 인터넷망을 거쳐 최종 목적지 서버에 도달하게 될것입니다. 인터넷은 누구나 쉽게 접근할 수 있는 공간이라 할 수 있습니다. 그...

C언어 포인터로 메모리를 직접 다루기 - 가상 메모리와 포인터 개념 정리

자바 개발자로 일하다 보면, JVM이 메모리 개발자 대신 관리해 준다. 그래서 메모리에대해 깊게 고민해볼 기회가 많지 않다. 하지만 메모리 관리는 개발자라면 반드시 알고가야할 부분이다. 최근 C언어를 학습하며 컴퓨터의 동작방식에 대해 깊게 공부하려고 노력 중이다. (사실 학교다닐때 열심히 공부했어야 했던것들..) 오늘은 메모리 동작방식에 대해 정리...

키보드 'a' 키를 누르면 컴퓨터에서 어떤 일이 일어날까? - 입출력 원리

개요 컴퓨터 하면 무엇이 떠오르시나요?일반적으로 사람들이 생각할때 컴퓨터 하면 떠오르는것은 모니터, 키보드, 마우스, 스피커, 본체 정도가 아닐까 싶습니다. 컵퓨터가 무엇인지 조금더 구체적으로 생각해 보겠습니다. 컴퓨터의 가장 중요한 부품은CPU 입니다. 사람의 ‘뇌’ 에 해당하는 부품 입니다. 컴퓨터에서 일어나는 모든 연산을 바로 이 CPU가 처리...