소개
현재 공동창업한 작은 스타트업 Ninjalerts에서 CTO역할로 일하고 있습니다.
Ninjalerts는 이더리움 블록체인 데이터를 기반으로 NFT 거래 정보들을 실시간으로 알려주는 서비스에요!
전에 만나씨이에이에서 개발 팀장으로 있었어요. 시작은 기획자였는데 개발자가 부족한 탓에 외주를 맡기려다가 직접 개발할 기회가 생기면서 운좋게 개발자로 전향했어요. 이후 자사몰을 자체 개발하면서 이커머스 개발팀장을 맡았어요. 온라인에 나온 다양한 좋은 자료들 덕분에 빠르게 성장할 수 있었어요. 제 노하우가 여러분들에게도 도움이 되길 바랍니다 :) Linkedin 프로필
강의
전체3수강평
- 좋은 공부가 됐습니다!
juhyeok.jeon
2024.04.01
1
게시글
질문&답변
2024.05.12
도커는 OS를 공유하지 않나요?
이해를 돕기 위해 VM과 컨테이너를 비교하면서 설명을 했는데 혼선이 좀 있었나봅니다. 환경 분리가 맞습니다. 다만 일반적으로 환경 분리란 무엇인지 모를 수 있기 때문에 환경 분리를 설명해주는 내용들이었습니다. 8:14에 한 말을 정확히 여기에 다시 올리면 " 겉으로 봤을 때는 운영체제도 분리됩니다" 라고 했어요. 여기서 두개의 컨테이너 vs 두개의 VM 비교상황으로 설명을 하고 있습니다. VM은 물리적으로 같은 서버일 수 있어도 독립적인 OS를 가지고 있기 때문에 컨테이너가 할당 받은 리소스와 동일하게 받더라도 상대적으로 리소스가 제한된다는 점을 설명하고 있어요. 그에 반면 컨테이너는 사용자 입장에서 (겉으로 봤을 때)에는 VM처럼 독립된 운영체제를 가지고 있는듯한 isolatiotion을 가지고 있지만 실질적으로는 Linux kernerl을 컨테이너들끼리 공유하고 있기 때문에 상대적으로 훨씬 가볍다 얘기를 하고 있고요. 동일한 강의에서 (4:21) container를 가능하게 해주는(독립적인 OS 설치 없이 환경 분리를 가능하게 해주는!) Linux Kernerl의 Namespacing (Isolation을 가능하게 해주는 기능) 그리고 Control Groups (리소스 나눠주는 기능)을 다루고 있습니다.
- 0
- 1
- 32
질문&답변
2024.05.05
user 내장 시 ref 필드 필요성
안쓰시면 빼도 됩니다!
- 0
- 1
- 45
질문&답변
2024.05.05
자바 스프링 개발자입니다.
좋은 질문입니다 스프링 개발을 안해봐서 확실하지는 않지만 제가 알기로 자바 PM2 같은게 필요가 없을거에요. 자바 자체에서 요청이 들어올 때마다 요청별로 하나의 스레드를 생성해주니깐요. 하지만 "PM2 + 노드 == 자바 스프링" 이렇게 1대1 적용은 아니긴 합니다. 노드는 각 프로세스가 싱글 스레드이긴 하지만 non blocking event loop 아키텍처이기 때문에 하나의 스레드가 수만개의 요청을 동시에 처리가 가능하니깐요. 그에 반면 자바의 스레드는 하나의 요청( blocking )만 처리하는걸로 알고 있습니다. 한개의 노드 프로레스가 수만개의 요청을 받을 수 있음에도 불구하고 PM2를 사용하게 되는 경우에는 CPU 코어가 여러개 있을 때입니다. 스레드 특성상 한개의 스레드가 여러 CPU를 사용할 수 없거든요. 그래서 보통은 성능 문제보다는 고가용성을 위해 PM2를 사용합니다. 예를 들어 배포할 때 3개의 프로세스가 있으면 순차적으로 배포하면 down time 없이 배포할 수 있게 되죠. 혹은 장애가 발생해서 프로세스가 하나 죽더라도 다른 복구하는 동안 다른 프로세스들이 분담해서 요청을 처리할 수 있게 되고요. 강의를 좀 보시면 PM2 안쓰고 VM을 여러개 쓰는걸로 발전시킵니다. 여기서부터는 싱글스레드이든 아니든 모든 언어에 동일하게 적용됩니다! VM 안에 여러 프로세스를 뛰웠어도 VM 자체가 죽으면 안에 아무리 많은 프로세스를 뛰워도 다 죽기 때문이죠. 그래서 제일 아랫단에 있는 VM 자체를 여러개 더 나아가서 각 VM여러 데이터센터(Availibility Zones)에 분산해서 배포합니다. 혹시라도 정전이 발생해서 데이터센터 자체가 문제가 될 수 있는 상황을 대비하는거죠. 몇년 전에 카카오에서 한개의 데이터센터 레벨에서의 분산이 올바르게 안되서 심각한 문제가 있었죠. PM2는 이런 고가용성 개념을 배우기 위한 진검다리라고 생각하시면 좋을듯 합니다
- 1
- 1
- 69
질문&답변
2024.04.09
ECS, LightSail 선택 고민
안녕하세요~ Lightsail, ECS 각각 얼마나 잘 아는지가 매우 중요한 선택 기준 이 될 수 있다고 생각해요. 만약 이제 막 새로 시작하는 서비스여도 ECS를 이미 잘 아신다면 ECS로 시작하는게 더 좋다고 봐요. ECS를 잘 안다면 ECS로 배포하는게 Lightsail 대비 드라마틱하게 시간이 늘어나지 않거든요. 하지만 빠르게 시제품을 만들거나 사이드프로젝트를 하면서 이것저것 배워가는 시기라고 하면 더 중요한 부분에 학습 시간을 투자하는게 좋겠죠. (디비 설계, 백엔드, 프론트 코드 등)
- 0
- 1
- 85
질문&답변
2024.04.05
lightsail instance를 종료해도 서버를 연결된 상태로 유지하려면 어떻게 해야 할까요?
안녕하세요~ 강의 계속 보시면 pm2로 배포하는 방법 나옵니다! pm2 쓰시면 터미널이 끊기고 나서도 계속 돌아갑니다
- 0
- 1
- 92