본문 바로가기

전체 글

[Middleware] ASGI(Asynchronous Server Gateway Interface) vs WSGI(WebSErver Gateway Interface) 0. Table Of Content 0. Table Of Content 1. Server Gateway Interface가 왜 필요한가? 2. WSGI (Web Server Gateway Interface) 3. ASGI (Asynchronous Server Gateway Interface) 3.1. 기존 WSGI에는 어떤 문제점이 있었는가? 3.2. ASGI는 어떤 방식으로 WSGI의 문제점을 해결했는가? 3.3. 간단한 ASGI Application 예제 4. Reference 1. Server Gateway Interface가 왜 필요한가? 일반적으로 우리가 보고 있는 웹 서비스는 브라우저를 통해서 흘러나온 웹서버의 내용들이다. 대부분의 어플리케이션의 경우 웹과 소통하는 미들웨어를 가장 널리 사용되.. 더보기
[Spring] 순차적 프로세스의 비동기식 프로세스로의 전환 삽질 1. 서론 및 얽힌 이야기 내부 시스템에 대해 지속적으로 healthCheck를 하는 Spring Boot기반 서비스를 개발한 적이 있다. DB에 등록된 시스템 리스트를 가져와 순차적으로 healthCheck를 실행하는 방식의 서비스이다. 그러나, 10/12 HealthCheck Target별로 HealthCheck 시점의 정합성이 맞지 않는 문제가 발생하였다. 문제 상황 서술 전에 적용중인 시스템 아키텍처 및 HealthChecker 서비스에 대한 개요를 먼저 풀어본다. A Group의 WAS에 대해 배포를 진행하였다. 배포가 진행되면, 해당 인스턴스로의 직접적인 호출에 대해서는 동작하지 않게 된다. static file을 제외한 모든 경로에 대해서 reverse proxy를 통하여 데이터가 was로 .. 더보기
[OpenSource] Apache Kafka Table of content 1. What is the Apache Kafka 2. Benefits of Apache Kafka 3. Apache Kafka 아키텍처 3.1. 주체 단위 아키텍처 3.1.1. Producer 3.1.2. Broker 3.1.3. Zookeeper 3.2. 데이터 단위의 아키텍처 3.2.1. Topic 3.2.2. Partition 3.2.3. Offset 4. Failover 과정 5. 가장 이상적인 Kafka 아키텍처 1. What is the Apache Kafka Apache Kafka는 대량의 데이터를 처리할 수 있으며, 엔드포인트간 메시지를 전달 할 수 있는 분산 발행-구독 메시징 시스템이다. Kafka 메시지는 스토리지에 유지되고 데이터 복제를 통해 데이터 손.. 더보기