전체 글

https://github.com/binary-ho
💾 Database Systems 💾

[DB] 코드로 이해하는 B+Tree 연산 과정

트리 기반 인덱싱에 자주 쓰이는 자료 구조인 B+Tree에 대해 공부하면서, 구체적으로 코드는 어떻게 이루어져 있는지에 대한 궁금증이 있었다. 호기심으로 살펴본 코드를 직접 한줄 한줄 보는 과정에서 많은 괴로움이 있었지만, B+Tree에 대해 더 제대로 이해할 수 있었던 것 같다. 직접 작성한 코드는 아니지만, 한줄 한줄 읽기 쉽게 변수명이나 코드를 정말 많이 수정했다. 그리고 최대한 모든 요소에 대한 주석을 직접 달았다. 이론을 먼저 살펴보고, 코드를 보며 제대로 이해해보자. 1. 동적 인덱스 구조 B+Tree B+Tree는 트리 구조의 일종으로 동적 인덱스 구조를 가지고 있다 B+Tree는 DB에서 인덱싱을 위해 사용하는 자료구조로, 노드 별로 M개의 데이터를 저장하는 트리이다. 이분 탐색 트리나 힙..

🔥 Projects 🔥

[Nginx] Don't try this at home - "IF" is Evil

Nginx if is evil Don't try this at home You were warned 미국 공포 영상이나 위험한 과학 실험 영상의 썸네일이나 제목을 보면 위와 같은 문구가 작성 되어 있다. 위의 문구는 NGINX 공식 홈페이지의 어떤 문서의 예제 위에 적혀 있는 문구이다. 예제를 따라하지 말라고 경고하고 있다. Nginx를 사용하며 if를 사용할 일은 꽤 많다. CORS 처리엔 필수적이고, 메서드나 소스에 따른 처리가 필요할 때가 있다. 그럼에도 Nginx if는 매우 매우 불친절하다. 또 단순히 불친절 한줄만 알았는데, 악마적인 모습 또한 감추고 있다. Nginx의 설정파일을 작성할 때 if를 사용하는 경우와 if의 불친절함, 그리고 Nginx의 if를 악마라고 부르는 이유를 살펴보자 1..

🔥 Projects 🔥

[Security] @WithSecurityContext를 이용해 커스텀 UserDetails SecurityContext Test 코드 작성하기

선요약 커스텀하게 UserDetails를 구현해서 사용중이라면, SecurityContext의 인증된 유저 관련 테스트를 진행할 때 @WithMockUser를 사용할 수 없다. 컨텍스트에 인증된 유저를 배치하는 여러 방법 중 이런 상황에서 편리하고, 아주 유연한 처리가 가능한 @WithSecurityContext를 이용해 테스트 코드를 작성하는 법을 소개해본다. 1. @WithMockUser 사용하기 보통 Spring Security의 Security Context에 로그인된 유저 정보를 이용한 테스트를 진행할 때, 간편하게 `@WithMockUser` 어노테이션을 이용할 수 있다. 내 프로젝트의 Authentication Helper 클래스는 아래와 같이 현재 로그인한 유저를 Security Conte..

✏️ Study ✏️

Git과 Github 이해하고 사용하기 (입문 가이드 + 강의 영상)

안녕하십니까 GDSC Hongik 웹 기초 스터디 강사를 맡은 이진호입니다. 이번 수업 진행 속도가 너무 빨랐다는 피드백이 많아, 강의 내용 글로 작성합니다. 실제 수업에서 1주차 서버와 리소스의 복습 내용을 제외한 수업 내용을 정리하였습니다. 글을 읽은 뒤엔 꼭 실습해봅시다! 실습 영상 링크와 수업 영상 링크는 최하단에 있습니다. 앞으로 더 나은 수업을 위해 노력하겠습니다. 감사합니다. 강의한 내용을 글로 옮겼기 때문에 글이 깁니다! 목차 1번 서문과 2, 3 번은 빠르게 넘어가거나 읽지 않으셔도 됩니다. 1. 들어가면서.. (깁니다. 안 읽으셔도 좋습니다.) 오늘 수업 주제는 "Git : The Information Manager from Hell" + Github 입니다. 제가 프로그래밍을 막 시작..

진호우!
binary-ho 블로그