title: "API Gateway, Service Mesh의 과거, 현재, 그리고 미래"
description: "현 Microservice, Kubernetes 시대의 API Gateway, Service Mesh에 대해, Legacy 기술 관점과 주요 keyword 간의 연결 중심으로 간략히 논한다. 이외에, 이들과 함께 자주 언급되는 gRPC, Kafka도 간단히 짚는다.**"**
cleanUrl: /sw-engineer/history-of-api-gateway-service-mesh
ogImage: "<https://anyflower.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F7570d2fc-66b1-4e23-bb3c-ff7b56842b0d%2F472dbe34-f8a6-48aa-89c9-d183c100f791%2FUntitled.png?table=block&id=91d76bda-c1c7-41a2-ba00-c06af6489602&spaceId=7570d2fc-66b1-4e23-bb3c-ff7b56842b0d&width=2000&userId=&cache=v2>"
floatFirstTOC: right
timeline
1980년대 : Request/Response 프로토콜, RPC
1990년대 : CORBA, EAI
2000년대 : Reverse Proxy, SOA, ESB
: Web 2.0
2010년대 ~ 현재 : Microservice, Kubernetes
: API Gateway, Service Mesh
2020년대 : Kubernetes Gateway API?
현 Microservice, Kubernetes 시대의 API Gateway, Service Mesh에 대해, Legacy 기술 관점과 주요 keyword 간의 연결 중심으로 간략히 논한다.
RPC, CORBA, EAI, ESB, SOA, Web Service, Web 2.0, Reverse Proxy, Microservice, Kubernetes, Kubernetes Gateway PI, gRPC, Kafka
1970년대 초, 분산 컴퓨팅 대두되며 EDI(Electronic Data Exchange) 등의 기업 시스템 간 연동의 시작되면서(참조)…
RPCHTTP은 1960년대 후반에 만들어진 Request/Response 프로토콜에 기반함.RPC(Remote Procedure Call)가 만들어짐(참조)RPC는 위치 투명성 제공이 중요. 즉 호출자 관점에서 상대방의 위치(로컬 또는 원격)에 대한 정보가 불필요하거나 최소화되어야 함을 강조. 일종의 약결합 아키텍처 채택CORBA, EAICORBA : 1990년대 초
CORBA 통신/구현 모델. 이미지 출처 : https://en.wikipedia.org/wiki/Common_Object_Request_Broker_Architecture
CORBA(Common Object Request Broker Architecture)는 서로 다른 운영체제, 프로그래밍 언어, 컴퓨터 하드웨어 간의 통신을 위한 RPC 기반 표준으로 객체 지향(Object Oriented) 모델을 채용(분산 객체. 참조)Active-X(이외에 COM, DCOM, EJB...)가 사실 상 본 모델을 사용Microservice 간의 통신에 자주 채택되는 gRPC 는 사실 상 본 모델 구현의 하나임. stub, IDL 등의 개념이 모두 포함됨. proxy 또는 broker 의 개념 본격 채용과 함께