목록2024/05 (5)
개발놀이터
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/KrUf6/btsHIAkZiX4/UXT12vwlXf5rH0qzSxjtY0/img.png)
저는 현재 소규모 스타트업에서 일하고 있는데요. 회사에서 큼직하지 않은 잡다한 인프라 담당을 겸하고 있습니다. 사용자 권한 관리하고 서버 내리고 올리고 라우팅이나 포트 관리하고 이런 서버관리 업무가 제 업무에 포함되어있습니다. 그러다보니 평소에 안그래도 부족했던 리눅스관련 지식이 더 티가 잘나더군요... 그래서 이번 기회에 리눅스 명령어부터 리눅스 커널에 대해서 좀 공부를 할 생각입니다. 평소의 제 방식처럼 일단 사용법부터 들이박아보고 이론은 조금 시간이 지나고 배워보도록 하겠습니다. 리눅스 사용자 추가서버 컴퓨터는 대부분 리눅스로 되어있습니다. 보통 제가 프로젝트를 할 때는 AWS에서 제공해주는 기본 사용자를 사용하곤 했었죠. 회사에선 개발전용 사용자가 있고 루트 사용자가 있더군요. 이 사용..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cj7AZA/btsHDVW8XOe/Ypi84uKt8UOGnlD7fjC2PK/img.png)
이번 포스팅에선 도커, 그 중에서 도커 네트워크에 대해서 알아보도록 하겠습니다. 도커 네트워크에 대해서는 구글링하면 bridge니 host니 overlay니 많이 나와있으니 흔히 구글링하면 나오는 내용 말고 좀 더 딥한 내용을 다뤄보려고합니다. 제가 도커 네트워크를 공부해야겠다고 생각하게 된 계기는 제가 너무 도커에 대해서 아무것도 모르고 도커를 사용하고 있던 것을 발견했습니다. 그냥 Dockerfile만들고 build하고 docker-compose에 등록해서 관리하면 끝! 사실 이게 끝일 정도로 도커 자체는 정말 간단하긴 하지만 도커를 조금 더 깊이있게 공부해야겠다는 마음으로 도커 카테고리를 약 1년만에 부활시켰습니다. 이번엔 도커 네트워크에 대해서 딥다이브하는 시간을 가져보겠습니다. 도커 아..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/YUGJB/btsHDh5ZImf/6HV6ESzkeKxH6UrxHk91W0/img.png)
이번 포스팅에선 AWS를 다채롭게 사용하여 대부분의 웹을 이루고 있는 3티어 아키텍처를 고도화하는 과정을 포스팅해보도록 하겠습니다. 3 Tier Architecture3계층 구조라고도 불리는 이 아키텍처는 현재 대부분의 웹의 구조입니다. 이 3티어 아키텍처 말고도 1티어 2티어도 있는데 그냥 티어라는 것은 "서버를 물리적으로 분리했다"라고 생각하시면 됩니다. 1티어 2티어 아키텍처에 대한 내용은 구글링하시면 쉽게 접할 수 있는 내용이기 때문에 이번 포스팅에선 넘어가도록 하겠습니다. 저는 3티어 아키텍처만 집중적으로 파보겠습니다. 클라이언트 계층흔히 정적 데이터(html, css, js, image)들이 들어가있는 계층으로서 3티어 아키텍처에선 주로 웹서버가 이 자리를 차지하고 있습니다. 웹에선..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/rzAIw/btsHunMpAoA/Pi8X3hkczhFywGhnGY3kY1/img.png)
저번 포스팅에서 파트2를 시작하면서 메세지 브로커의 장을 열었습니다. 메세지 브로커를 이용해서 서버간 통신을 조금 더 매끄럽게 진행할 수 있다는 것을 알았고 어떤 모델이 있는지 알았습니다. 이번엔 Pub/Sub 메세징의 대표주자 아파치 카프카 (Apache Kafka) 에 대한 개념을 잡아보도록 하겠습니다. 구글 트렌드 위의 그래프는 구글 트렌드에서 검색한 Kafka와 RabbitMQ에 대한 트렌드 추이입니다. 기본적으로 Kafka에 대한 검색량이 높고 특징으로는 2022년에 들어오면서 갑자기 70퍼센트대로 올라왔다는 것이 눈에 띕니다. 이는 한국에서 보이는 추이이고 이번엔 글로벌로 보겠습니다. 글로벌도 상황은 비슷해보이네요. 역시 2022년에 카프카에 대한 수치가 올라간 것이 특징입니다. R..
우리는 스프링을 사용하면서 너무 편하게 개발하고 있습니다. 스프링이 정해둔 규칙대로 프로그래밍하면 되기 때문에 정말 쉽게 개발할 수 있죠. 하지만 이게 쉽긴하지만 마냥 쉽진 않습니다. "스프링이 정해둔 규칙" 이라는게 정말 넓고 깊은 지식을 요구하거든요. 일례로 스프링 시큐리티같은 것만 하더라도 "스프링이 정해진 규칙" 이지만 시큐리티를 처음 보는 사람들은 이게 만만치않게 힘들겁니다. 이번에 포스팅할 스프링 빈을 직접 등록하는 것도 마찬가지일 것이라고 생각합니다. 마냥 컴포넌트 스캔을 이용해서 빈을 등록했고 구글링한 예제 코드에서도 @Bean을 이용해서 빈으로 등록하라고는 했지만 어떻게 동작하는 것이고 어떻게 사용하는 것인지 처음엔 알기 쉽지 않거든요. 어떻게 빈을 직접 등록하는 것인지 어떤 상황..