본문 바로가기

sub_project6

Nest.js A progressive Node.js framework for building efficient and scalable server-side applications. Node.js 를 사용하는데 Express.js 프레임워크에 typescript로 빌드가 되며 타입스크립트와 express 에서 사용하는 라이브러리 등이 모두 활용 가능하다. 일단 typescript 를 사용하기에 정적 언어를 많이 써본 자바 개발자의 진입장벽이 현저히 낮아진.. 1. 설치 brew install npm # node.js 패키지 매니저 설치 npm i -g @nestjs/cli # nest.js 의 새로운 프로젝트를 생성할 수 있게 하는 cli 패키지 매니저 2. 프로젝트 생성 nest new $ nest 에서 제공하는 여.. 2020. 12. 31.
마이크로서비스 패턴 1장 모놀리스 지옥에서 벗어나라 MSA 패턴 책을 읽고 내용을 정리합니다. 모놀리스 설계의 시작 리소스가 적은 상태에서의 애플리케이션의 첫 삽은 모놀리스 식 애플리케이션은 생산성있고 관리와 개발이 적합한 구조라고 생각한다. FTGO 라는 음식배달 서비스를 예를 든다. 하나의 비즈니스 로직을 담은 애플리케이션 모듈로 구성되어 있고 REST API / 웹 UI를 처리하는 인바운드와 그 밖에 외부 서비스를 처리하는 아웃바운드 어댑터로 구성하여 하나의 WAR 로 패키징해서 실행/배포 되게끔 구성을 하게 된다. 이러한 구조는 개발이 간단하고 애플리케이션을 쉽게 변경할 수 있고 테스트하기 쉬우며, 배포 및 스케일 아웃(LB 에 확장한 인스턴스를 실행)하기 쉽다. 모놀리스 방식의 복잡함 대두 여전히 하나의 소스 코드 저장.. 2020. 11. 8.
서버를 컨테이너로 띄우자 테스트 서버를 이미지로 빌드해 컨테이너로 띄웠던 기억을 되새겨 기록합니다. SpringBoot 기반으로 서버를 띄워보려 합니다. 우선, SpringBoot 애플리케이션을 준비합니다. @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } Dockerfile 빌드할 이미지를 위해 도커파일을 준비해봅니다. 몇몇 명령어만 설명합니다. FROM openjdk:8-jre LABEL maintainer="younji@tistory.com" RUN cat /usr/share/zoneinfo/Asia/Seoul > /et.. 2020. 6. 12.
BitBucket Deployment 파이프라인을 만들어보자 최근에 들어서야 프라이빗 레파지토리를 팀 단위로 생성할 수 있지만 이전엔 아니었다. 그래서 많은 형상 관리 툴 중에 Bitbucket을 고려하지 않았나 싶다. 실제로 3명으로 구성된 아주 자그마한 팀일 때 bitbucket을 고려하여 소스를 관리하였다. Github도 지금은 CI/CD를 파이프라인으로 구현할 수 있지만 bitbucket은 좀 이전에 해당 파이프라인을 가지고 있었다. Bitbucket으로 개발한 프로젝트 중에 MySQL DB 도커 이미지를 관리하는 레파지토리가 있다. (거의 로컬, 테스트 환경에서 사용하는 스키마 관리 정도..) 해당 레파지토리에 올린 후에 ECS 로 이미지를 빌드해서 업로드하는 플로우가 필요했는데, bitbucket에서 아주 간단하게 해당 파이프라인을 제공한다. 물론 AW.. 2020. 6. 9.