본문 바로가기

SW Architecture3

[restful api] restful api vs GraphQL 기초 Restful API Q . 우리가 흔히 쓰는 Rest API 는 진짜일까 ? A : Rest API 가 아니지만 Rest API 라고 부른다. https://deview.kr/2017/schedule/212 그런 REST API로 괜찮은가 발표자 : 이응준 deview.kr why ? self-descriptive와 HATEOAS를 만족하지 않기 때문에. Self-descriptive : 메세지를 그 메세지만 보고 뜻을 알 수 있어야 한다. HATEOAS : 애플리케이션 상태는 Hyperlink를 이용해서 전이가 되어야 한다. 해결방법 self-descriptive : custom media type, profie link relation등으로 만족시키기 HATEOAS : HTTP 헤더나 본문에 링크를.. 2023. 1. 8.
[Architecture / MSA] 02. 프론트 역할과 백엔드 설계의 시작 : API API 설계는 각 백엔드 마이크로서비스가 프론트 엔드에 제공할 서비스 명세 정의된 마이크로서비스 내부 구조에 따라 '도메인 모델' 과 '데이터 모델'을 설계하는 것. 도메인 모델 작성 : 도메인 모델링 DDD를 작성하면 별도의 정형화된 모델을 만들지 않고, 간략히 도메인 모델 등을 포스트잇 같은 도구로 작성해서 곧바로 소스코드로 도메인 모델을 개발한다는 것 프론트엔드는 UI 레이아웃을 정의하고 백엔드의 API를 호출해서 API 가 보내준 데이터를 기반으로 UI에 어떻게 표현할 것인가를 정의하는 활동 *DDD에는 전략적 설계와 전술적 설계라는 설계 영역이 있다. 전략적 설계 : 유비쿼터스 언어를 통해 도메인 지식을 공유 및 이해하고 이를 기준으로 개념과 경계를 식별해 바운디드 컨텍스트로 정의, 경계의 관계.. 2022. 7. 28.
[Architecture / MSA] MSA 이해하기 그리고 개념 정리 01 쇼핑몰에 사용자 이용수가 몰린다고 생각해보자 ex. 마감세일 등 상황 ex) 트래픽이 증가하는 마감세일 등의 타이밍에서 사용자 트래픽을 예상해 시스템 용량을 증설하고 다시 줄이는 번복을 삼가하기 위해 클라우드 인프라를 사용해 시스템 인프라 환경을 준비한다. 서비스 사용량 증가에 따른 인프라 용량의 성능과 가용성을 높이는 일반적인 방법 - scale-up: 물리적 용량(cpu, clock)을 증가시켜 데이터 처리를 증가시킨다.' - scale-out : 수평 확장, 가용성 높이기, 사용량을 분산시켜서 전체적으로 장애가 없이 운영되게 한다. 확장 탄력성을 보장 시스템의 인스턴스로 설정된 개수로 복제해서 증가시킨다.CPU 사용량(%)이 증가하면 인스턴스가 1개에서 2개가 되는 등의 적절한 분산이 이뤄진다. M.. 2022. 7. 21.