IT아키텍처/MSA(MicroServiceArchitecture) 9

메시지 큐를 사용해야하는 12 가지 이유

https://modest-developer.tistory.com/m/30 메시지 큐를 사용해야하는 12 가지 이유 1. 이중화를 통한 지속성 이중화는 메시지 큐의 가장 명백한 장점 중 하나이다. 보통 애플리케이션은 충돌, 시간 초과, 코드 오류 등의 기타 문제가 있다. 이는 특히 매달 수백만 또는 수십억 건 modest-developer.tistory.com 1. 이중화를 통한 지속성 이중화는 메시지 큐의 가장 명백한 장점 중 하나이다. 보통 애플리케이션은 충돌, 시간 초과, 코드 오류 등의 기타 문제가 있다. 이는 특히 매달 수백만 또는 수십억 건의 트랜잭션을 처리하는 애플리케이션에서 적용된다. 큐는 메시지를 읽는 프로세스를 통해 트랜잭션이 완료되었으며 제거해도 안전하다는 것을 확인함으로써 이중화를 ..

아파치 카프카(Apache Kafka)란?

https://blog.naver.com/dktmrorl/222115850592 [IT정보] 아파치 카프카(Apache Kafka) 개념 아파치 카프카(Apache Kafka)란? Kafka는 아파치 소프트웨어 재단이 스칼라로 개발한 오픈 소스 메시지 ... blog.naver.com 아파치 카프카(Apache Kafka)란? Kafka는 아파치 소프트웨어 재단이 스칼라로 개발한 오픈 소스 메시지 브로커 프로젝트입니다. 이 프로젝트는 실시간 데이터 피드를 관리하기 위해 통일된, 높은 처리량, 낮은 지연시간을 지닌 플랫폼을 제공하는 것이 목적입니다. ​ 요컨대 분산 트랜잭션 로그로 구성된, 확장 가능한 pub/sub 메시지 큐로 정의할 수 있으며, 스트리밍 데이터를 처리하기 위한 기업 인프라를 위한 고부가..

메시지 큐(Message Queue, MQ)란?

https://blog.naver.com/PostView.nhn?blogId=dktmrorl&logNo=222117711303&categoryNo=0&parentCategoryNo=0&viewDate=&currentPage=1&postListTopCurrentPage=1&from=postView [IT정보] 메시지 큐(Message Queue, MQ) 개념 메시지 큐(Message Queue, MQ)란? 메시지 큐(MessageQueue: MQ)는 프로세스 또는 프로그램 인스턴... blog.naver.com 메시지 큐(Message Queue, MQ)란? 메시지 큐(MessageQueue: MQ)는 프로세스 또는 프로그램 인스턴스가 데이터를 서로 교환할때 사용하는 통신 방법입니다. 더 큰 개념으로는 메..

[Kafka] #1 - 아파치 카프카(Apache Kafka)란

데이터 파이프라인(Data Pipeline)을 구축할 때 가장 많이 고려되는 시스템 중 하나가 '카프카(Kafka)' 일 것이다. 아파치 카프카(Apache Kafka)는 링크드인(LinkedIn)에서 처음 개발된 분산 메시징 시스템이다. 2011년 오픈소스로 공개되었으며 이후 2012년 10월 아파치 인큐베이터를 종료했다. 현재 링크드인에서 카프카를 개발하던 제이 크렙스(Jay Kreps)를 비롯한 일부 엔지니어들이 'Confluent'라는 회사를 설립하여 카프카와 관련된 일을 하고 있다. 카프카라는 이름은 유명한 작가인 '프란츠 카프카(Franz Kafka)'에서 따왔다. (참조 : Quora) I thought that since Kafka was a system optimized for writi..

배민 API GATEWAY – spring cloud zuul 적용기

https://techblog.woowahan.com/2523/ 배민 API GATEWAY – spring cloud zuul 적용기 | 우아한형제들 기술블로그 {{item.name}} 서비스를 운영하고 개발하는 팀이라면, LEGACY라는 거대한 괴물이 얼마나 다루기가 힘든 일인지 동감 할 것이다. 이 괴물이 오래되면 될수록, 크면 클수록… 제가 운영하고 개발하고 있 techblog.woowahan.com

MSA 아키텍쳐 구현을 위한 API 게이트웨이의 이해 (API GATEWAY) #2

MSA 아키텍쳐 구현을 위한 API 게이트웨이의 이해 #2 API 게이트웨이 기반의 디자인 패턴 조대협 (http://bcho.tistory.com) API 게이트 웨이는 여러개의 엔드포인트를 설정하고, 각 엔드포인트 마다 메세지 흐름을 워크 플로우 엔진 설정을 통해서 API 에 대한 Mediation, Aggregation 설정을 할 수 있는 미들웨어 이다. 쉽게 말하면 설정과 프로그래밍이 가능한 툴일 뿐이다. 그래서, API 게이트 웨이를 도입한다고 게이트웨이가 재 역할을 하는 것이 아니라, 게이트웨이 를 이용하여 적절한 게이트 웨이 아키텍쳐를 설계해야 한다. 여기서는 API 게이트 웨이를 이용한 아키텍쳐 설계시 참고할 수 있는 디자인 패턴에 대해서 소개 한다. ※ 이 패턴들은 예전에 ESB 기반으로..

MSA 아키텍쳐 구현을 위한 API 게이트웨이의 이해 (API GATEWAY)

MSA 아키텍쳐 구현을 위한 API 게이트웨이의 이해 #1 조대협 (http://bcho.tistory.com) MSA(마이크로 서비스 아키텍쳐, 이하 MSA)와 함께 근래에 떠오르고 있는것이 API 게이트 웨이이다. API 게이트웨이는 API서버 앞단에서 모든 API 서버들의 엔드포인트를 단일화하여 묶어주고 API에 대한 인증과 인가 기능에서 부터 메세지에 따라서 여러 서버로 라우팅 하는 고급기능 까지 많은 기능을 담당할 수 있다. API 게이트웨이의 시작은 MSA가 SOA(서비스 지향 아키텍쳐)에서 시작한것 처럼 ESB (Enterprise Service Bus)에서 부터 시작 되었다. 그래서 ESB의 대부분의 컨셉을 많이 승계했는데, ESB의 실패와 단점을 보완해서 만들어진 사상이 API 게이트웨이..

대용량 웹서비스를 위한 마이크로 서비스 아키텍쳐

마이크로 서비스 아키텍쳐 (MSA의 이해) 조대협(http://bcho.tistory.com) 배경 마이크로 서비스 아키텍쳐(이하 MSA)는 근래의 웹기반의 분산 시스템의 디자인에 많이 반영되고 있는 아키텍쳐 스타일로, 특정 사람이 정의한 아키텍쳐가 아니라, 분산 웹 시스템의 구조가 유사한 구조로 설계 되면서, 개념적으로만 존재하던 개념이다. 얼마전 마틴파울러(Martin folwer)가 이에 대한 MSA에 대한 개념을 글로 정리하여, 개념을 정립 시키는데 일조를 하였다. 이 글에서는 대규모 분산 웹시스템의 아키텍쳐 스타일로 주목 받고 있는 MSA에 대한 개념에 대해서 알아보도록 한다. 모노리틱 아키텍쳐(Monolithic Architecture) 마이크로 서비스 아키텍쳐를 이해하려면 먼저 모노리틱 아키..