일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 스프링 공부
- 기술공부
- 자바공부
- 스프링부트공부
- JPA 공부
- 스프링
- Axon framework
- 플러터 공부
- JPA
- 스프링부트
- 프로그래머스
- JPA공부
- querydsl
- DDD
- JPA스터디
- nestjs공부
- 알고리즘공부
- 코테공부
- 스프링공부
- nestjs스터디
- JPA예제
- Kafka
- K8S
- 기술면접공부
- 코테준비
- 카프카
- 자료구조공부
- Flutter
- nestjs
- 플러터 개발
- Today
- Total
목록분류 전체보기 (715)
DevBoi
nest new ./로 하면 mkdir하고 안에 들어가서 하면 내부를 자동생성하게 해준다. 자동 생성되는 파일에 대해서 살펴보자 1) eslintrc.js 개발자들이 특정한 규칙을 가지고 코드를 깔끔하게 짤수있게 도와주는 라이브러리 타입 스크립트 관련 문법 체크를 해준다. 2)prettierrc 코드의 형식을 맞춰준다. 포매터라고 생각하면된다. 3) nest-cli.json nest프로젝트 설정 할수 있게 해주는 json파일 4)tsconfig.json 어떻게 타입스크립트를 컴파일 할지 설정 5) package.json 프로젝트 이름, 의존성 등을 정의하는 파일이다. 6)main.ts application이 생성되고, AppModule을 만들어주는 부분에 해당된다. 해당 root Module 하위에 다른..
1. Nodejs 설치 https://nodejs.org/ko/download 다운로드 | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 여기서 설치하면된다. 2. NestJS CLI 설치 sudo npm i -g @nestjs/cli 3. 설치확인 nest --version nest new nestjs-test npm을 선택해주면, nestjs-test프로젝트 내에 많은 소스들이 자동 생성된다. 4. 프로젝트 확인
새로운 사이드 플젝에서 NestJs라는 걸 사용하게 되었다. 아... 백엔드로 java script라니 ㅋㅋ ;; 무튼 공부해보자 파이썬은 장고 자바는 스프링 js,ts에서는 NestJS라고 한단다 ㅋㅋ 플러그인 확장과, 왠만한 기능은 내장하고 있고 스프링 관련 내용과도.. 좀 있다고한단다 ㅋㅋ 무튼 사실 이런저런 이점이 있으니까 누군가가 이렇게 쓰고, 사용하고 하겠지... 이런건 중요하지 않으니 바로 실습 및 세팅해서 진행해보자
기초적인 내용이지만, 한번 정리하면서 해보자..(옛날 생각도 하면서ㅎㅎ) 1. docker image pull docker pull nginx 2. docker container create docker create -p 80:80 --name nx nginx 3. docker ps -a 생성된 docker container 확인(나는 마리아디비했음) 4. docker start 생성된 컨테이너를 시작 5. docker stop 컨테이너를 멈춤 6. docker rm 컨테이너 삭제 7. docker rmi 도커 이미지 삭제 8. docker restart docker 컨테이너 재시작
Aggregate 패턴은 도메인 모델 패턴이라는 거대한 개념에서, 좀더 세분화 된 모델링을 할 수 있다. 거대한 도메인 모델 패턴에서 적당히 쪼개야 하는데 Aggreagte개념으로 좀더 세분하게 쪼개는 것이다. 도메인 모델은 행위 + 자료구조를 통해 비지니스 로직을 구현한다. 도메인 모델은 POJO로 구성한다. Aggreate가 뭘까? 서비스에서는 행위를 기준으로 도메인을 호출하는데 이를 서비스 단위로 Aggregate단위로 묶는것이다. 몇가지 타입을 공통으로 모델링을 해서 사용하라고 가이드를 한다. Value object 란 뭘까? DTO와 비슷해 보이지만, DDD에서는 해당 valueobject는 DTO와 다르다. 개념적으로 완전한 하나를 표현하고, 고유의 식별자를 가지지않는다. 저 3가지 중에 Co..
개체 모델을 만들고, 행위를 그 안에서 선언 서비스에서는 해당 행위에 대한 선언으로 로직을 처리한다. 액티브 레코드 패턴은 행위가 getter,setter,save()만 있는 것을 의미한다. 바람직한 것은 행위가 엔티티안에 들어가서 비즈니스 로직에 대한 처리를 담당해주는 것이 좋다. User라는 엔티티가 있다고 하면 주소변환에 대한 메소드 행위를 Member entity안에 넣는 것이다. 예를 들면 @Getter @Setter class Member{ private String city; private String dong; public void 주소바꾸기(String city,String dong){ this.setCity(city); this.setDong(dong); } } 뭐 이런식으로 진행이 되..
aggregate - 데이터 요소 command - api 후보 전통적인 방법 인 트랜잭션 스크립트 패턴이 있다. 트랜잭션 단위로 데이터베이스를 작업하는 것이다. 절자 지향 스크립트로 구현하고, 데이터베이스 직접 접근도 가능하다. -> 트랜잭션 간 비즈니스 로직이 중복 되기 쉽다, 추후 유지보수가 어려워진다. 이런 코드의 패턴은 무조건 거부는 아니고 유지보수하는데 불리하게 발전될 가능성이 높다. 왜냐면 최근 방문일시를 update하고 방문을 insert하는 것은 결국 추후에 if,else로 길게 발전될 가능성도 높고 각각의 메소드가 다른곳에서 중복적으로 사용될 가능성도 높기 떄문이다. 또한 만약에 코드에 sql 문이 있다면, DB의 기술에 대한 종속성이 존재해 버린다. 따라서 이런 코드는핵심 도메인 코드..
1. registry에서 이미지를 풀/푸쉬를 한다. 2. 컨테이너 가져온 이미지 바탕으로 create하고 3. create된 컨테이너를 run하면서 메모리에 컨테이너가 동작된다. docker 에서 run은 create + run의 개념이다. 따라서, docker 에서 run은 create가 필요한 초기1회만 사용하는것이 좋다. (계속 run을 실행하면, create, start해버리기 때문에 불필요한 컨테이너가 겁나 많이 는다.) 이 컨테이너를 중지하고싶으면 stop이라고 하면, 컨테이너가 꺼지고 메모리에서 내려가게되고 rm으로 컨테이너를 삭제 할수 있다. 이미지는 rmi 로 삭제하고.. 컨테이너를 쓰다가 commit하면, 컨테이너 기반으로 이미지를 만들수 있다고 한다. 자.. 라이프 사이클을 명령어로 ..
Docker registry 에 대해서 공부를 해보자 실무에서 써봤지만.. 뭐 한번더 기초적인 내용을 공부해보자 docker image들을 push,pull이 가능한곳이 docker registry라고 한다. 아래 그림을 보면 이해가...좀 더 잘되려나? 도커 퍼블릭 레지스트리 검색 및 확인 브라우저 : https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by mil..
쿠버네티스 : 컨테이너 기반 오픈소스 가상화 프로젝트 기존 애플리케이션과 클라우드 네이티브 애플리케이션과의 차이는 대략적으로 이렇다. 이론을 아는건 지루한 일이지만, 뭔가를 시작하기전에 이론에 대해서 알고 시작하면 조금 더 좋다. 뭐 잘 알다 싶이, 클라우드 네이티브로 하면, 파드 개수를 조절해서 애플리케이션의 개수를 늘리거나 스케일에 좀 더 유연하고 이를 인그레스로 분산하고 뭐 등등 여러가지 장점이 있다. 이론은 귀찮으니, 이정도만 알고 바로 실습 ㄱ