본문 바로가기

System Architecture

(3)
System Architecture - 마이크로서비스와 모놀리식(Microservice and Monolithic) 마이크로서비스 마이크로서비스는 소프트웨어가 잘 정의된 API를 통해 통신하는 소규모의 독립적인 서비스로 구성되어 있는 경우의 소프트웨어 개발을 위한 아키텍처 및 조직적 접근 방식이다. 이러한 서비스는 독립적인 소규모 팀에서 보유한다. 마이크로서비스 아키텍처는 애플리케이션의 확장을 용이하게 하고 개발 속도를 앞당겨 혁신을 실현하고 새로운 기능의 출시 시간을 단축할 수 있게 해준다. 1. 마이크로서비스는 주변 서비스에 대한 인식 없이 독립적으로 개발, 배포 및 관리된다. 2. Publish-Subscribe Patter 혹은 HTTP 기반 RESTful 방식으로 서로 통신한다. 3. 단일 책임이 있다. 4. 느슨하게 결합되어있다. 모놀리식 아키텍처 반면 모놀리식 아키텍처의 경우 모든 프로세스가 긴밀하게 결합..
System Architecture - 로드 밸런싱 (Load Balancing) 로드 밸런싱 (Load Balancing) 이란 서버에 가해지는 부하 (Load) 를 분산 (Balancing) 해주는 장치, 또는 기술을 의미한다. 클라이언트와 서버 풀 (Server Pool, 분산 네트워크를 구성하는 서버들의 그룹) 사이에 위치하며, 한 대의 서버로 부하가 집중되지 않도록 트래픽을 관리하여 각각의 서버가 최적의 퍼포먼스로 트래픽을 처리할 수 있도록 하는 것이 로드 밸런싱이다. 계기 서비스의 초기 단계에서는 클라이언트 수가 적기 때문에 서버 한 대로도 모든 요청에 응답하는 것이 가능할 것이나, 사업 규모의 확장, 클라이언트의 증가가 이루어지면 기존의 서버로는 유지가 불가능하게 된다. 이 경우, 서버의 증설이 필요한데, 첫 번째로 scale-up이 있다. scale-up은 서버의 자체의..
System Architecture - 기본과 용어들 Client 말 그대로 해당 서비스를 사용하는 클라이언트이다. DNS DNS는 Domain Name Server의 약자이다. 다음 글을 참고. https://lgphone.tistory.com/152 Web - DNS (Domain Name Server) DNS (Domain Name Server) 는 도메인을 저장하는 서버로써, www.example.com 과 같이 사람이 읽을 수 있는 도메인 이름을 192.0.2.1 과 같은 숫자 IP 주소로 변환하여 컴퓨터가 서로 통신할 수 있도록 해준다. DNS lgphone.tistory.com CDN CDN은 Content Delivery Network 또는 Content Distribution Network의 약자이다. 다음 글을 참고. https://lgp..