type
status
date
slug
summary
tags
category
icon
password
애플리케이션, 애플리케이션 구성요소, 백엔드 데이터 소스 간의 연결을 간소화하는 소프트웨어
운영체제와 응용 프로그램 사이에서 추가적인 서비스를 제공하거나 클라이언트와 서버 간의 통신을 담당하는 소프트웨어이다.
Java, C++, Python 와 같은 언어로 작성된 구성요소가 서로 통신할 수 있도록 아래의 공통 메시징 프레임워크를 사용한다
- JSON
- REST
- XML
- SOAP
종류
웹 애플리케이션 서버(WAS)
DB 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위해 만들어진 Application Server
정적, 동적 리소스를 분리하여 최적화를 하기 떄문에 웹 서버, WAS를 분리해서 관리함
MOM
서로 다른 메시징 프로토콜을 사용하는 애플리케이션 구성 요소가 통신하여 메시지를 교환할 수 있도록 함
메시지 큐 및 메시지 브로커가 있음
RPC
하나의 애플리케이션이 동일한 컴퓨터나 다른 컴퓨터 또는 네트워크에서 실행되는 다른 애플리케이션에서 프로시저를 트리거할 수 있도록 함
데이터베이스
백엔드 데이터베이스에 대한 액세스 및 상호 작용을 단순화
SQL, No-SQL, newSQL 이 있음. DB에 대한 변천사는 아래 링크 참고
애플리케이션 프로그래밍 인터페이스(API)
개발자가 특정 애플리케이션에 접근하고 그 기능을 사용할 수 있게 하는 인터페이스
트랜잭션 모니터링
분산 트랜잭션을 관리하고 처리 성능을 향상시키기 위한 미들웨어
비동기 데이터 스트리밍
중간 저장소에서 데이터 스트림을 복제하여 여러 애플리케이션 간에 데이터 공유를 지원
대표적으로 Kafka가 있음