개발자 꿈나물
-
항해 99 5기 TIL_93항해 99 2022. 4. 14. 00:36
▶ Today I Learned [package.json이 꼭 필요할까요?] 꼭 필요하다. 왜냐하면 npm이 이를 통해 프로젝트를 식별하고 어떤 패키지를 의존하고 있는지 의존(dependency & devdependency)파일을 참고하고 종속처리를 해주기 때문이다. package.json은 npm이라는 오픈소스 패키지 생태계를 사용하기 위한 명세이자, 프로젝트의 의존성 관리를 위한 명세, 또 이 생태계로의 배포를 위한 명세라고 볼 수 있다. 특정 패키지를 npm install을 통해 설치할 때 npm registry로 부터 그 패키지를 가져오는 것이며 이때 패키지에 대한 정보가 package.json에 들어있어야만 한다. 그렇지 않으면 npm에 있는 패키지를 설치하거나 npm에 패키지를 배포할 수 없다..
-
항해 99 5기 TIL_92항해 99 2022. 4. 13. 10:21
▶ Today I Learned 우리 프로젝트에 적용된 도커를 하나씩 뜯어보며 공부해보자. .dockerignore: docker 이미지를 빌드할 때 제외할 파일을 정해준다. 현재 우리는 아래와 같이 노드의 모듈들과 .gitignore 파일은 올라가지 않도록 하고 있다. # Dependency directories node_modules/ .gitignore Dockerfile.dev: 도커 공식문서에 보면 아래와 같은 문구가 있다. In order to build the application, we need to use a Dockerfile. A Dockerfile is simply a text-based script of instructions that is used to create a conta..
-
항해 99 5기 WIL_13항해 99 2022. 4. 11. 06:30
▶ Weekly I Learned (회고) 프로젝트가 끝나가면서도 여전히 배울게 많은 요즘이다. 단순히 비즈니스 로직만 짜는 것이 아닌 AWS의 기술들, 도커와 CI/CD, 타입스크립트 등 다른 팀원 분들이 적용하신 부분들을 공부하고 있다. 쉽지 않지만 하나씩 차근히 따라해보고 필요한 부분은 공부하며 내것으로 만들어나가자. 화이팅팅! + 항해 동안의 WIL 작성은 이것으로 마무리이다. 모두와 함께하던 시간이 그리울 듯 하다. 다같이 열심히 공부하고 답을 찾아나가던, 아니, 우리만의 답을 완성해가던 그때를 기억하며 그 열정을 가지고 꾸준히 공부해나가자. 화이팅팅 :) ▶ 공부 시 참고 링크들 없음
-
항해 99 5기 TIL_91항해 99 2022. 4. 11. 06:30
▶ Today I Learned 며칠 전 찾은 글에 이어 추가적으로 도커에 대해 정리해보고자 한다. IBM의 정의: "Docker is an open source platform for building, deploying, and managing containerized applications." 도커는 컨테이너화된 애플리케이션을 만들고 배포하고 관리하는 오픈소스 플랫폼이다. "Docker is an open source containerization platform. It enables developers to package applications into containers—standardized executable components combining application source code wi..
-
항해 99 5기 TIL_90항해 99 2022. 4. 10. 00:10
▶ Today I Learned [이력서] 종이 규격에 맞는 워드 파일 것은 것을 사용하기! (하지만 제출 시에는 pdf나 링크 사용! 뷰어가 없는 경우에 대비하여!) 이력서 포맷은 인터넷에도 많이 나와 있음 [이력서의 목적] 1) 면접 볼만한 사람을 걸러내기 위해 채용 담당자가 보기에 빠르게 보다가도 '오 다시봐야지' 하는 생각이 들 수 있는가 2) 면접 질문을 준비하기 위해 이력서 내용이 면접 때 어떤 질문으로 이어질지 고민하고 작성하자 3) 나의 부족한 점을 발견하는 것 이력서에 쓸 내용이 없다면? 의미있는 경험이 더 필요하다는 뜻 혹은 한 일에 대한 성과를 모르거나 숫자로 표현할 수 없다는 것 -> 일할 땐 항상 성과(목표)에 집중하고 숫자로 나타낼 수 있도록 항상 측정하고 기록하자. 즉, ‘통계..
-
항해 99 5기 TIL_89항해 99 2022. 4. 9. 20:24
▶ Today I Learned [최종 발표회] 팀원들과 그간 준비한 프로젝트에 대해 최종 발표회를 진행하였다. 우리의 최종 프로젝트 아키텍처는 다음과 같다. 기본적으로 메인이 되는 화상채팅 기능은 WebRTC 기술인 simple peer를 사용하였다. P2P방식을 사용하였기에 많은 인원을 수용할 수는 없으며 인원 제한은 4명으로 두었다. STUN 서버는 구글에서 제공되는 것을 사용한 것으로 안다. 그 외 보안을 위해 HTTPS를 설정했고 편리한 배포를 위해 Travis CI와 Docker를 이용, 서버 이용량 증가 시 자동 확장을 위해 Amazon Auto Scailing을 사용하였다. 클라이언트로 부터 어떤 트래픽이 발생하면 Elastic Load Balancer가 이를 서버 상에서 적절히 나누어준다..
-
항해 99 5기 TIL_88항해 99 2022. 4. 8. 00:14
▶ Today I Learned [프로젝트 발표영상 피드백] 1) 각 서버 안에서 다시 도커 컨테이너를 실행시키는 이유는 뭔가요? 즉, 도커를 사용한 이유가 궁금합니다. 왜냐면 이미 오토 스케일링 되는 환경을 구성했는데 하나의 서버에 하나의 컨테이너만 실행하는 것이 어떤 점에서 도커를 사용하는 의미가 있는 것인지 모르겠습니다. 굳이 컨테이너로 만들지 않아도 어차피 오토 스케일링 하는 과정에서 똑같은 서비스가 복제되어 생성되지 않나요? 2) RDB와 NoSQL DB를 함께 사용한 이유가 NoSQL DB가 로그를 남기기에 더 좋다고 판단해서라고 했는데 실제로 얼마나 좋았나요? RDB와 NoSQL DB에 각각 로그를 남기는 테스트 해서 나온 객관적인 결과로 결정한 건가요? 그리고 실제로 어느 한쪽이 더 좋은 ..