Prometheus로 Armeria 메트릭 모니터링하기

macOS Catalina 환경에서 실습하였습니다. Spring Boot, Armeria 설정 Armeria 로 띄운 서버의 메트릭을 Spring Actuator 로 노출하여 Prometheus 서버에서 수집을 할 수 있게 하기 위해, 아래의 »

AtomicReferenceFieldUpdater 사용하기

Armeria 내부 구현을 보면 아래와 같은 코드를 심심찮게 볼 수 있다. public class DefaultStreamMessage<T> extends AbstractStreamMessageAndWriter<T> { private static final AtomicReferenceFieldUpdater& »

RxJava의 subscribeOn와 observeOn (2)

이전 글 에서 RxJava의 subscribeOn(), observeOn()의 내부 구현을 한번 살펴보며 쓰레드의 동작에 대해 정리해보았다. 이번 글에서는 로그를 남겨보며 이 실제 동작을 한번 살펴 볼것이다. Rxjava2 »

RxJava의 subscribeOn와 observeOn (1)

현재 약 2년동안 실무에 RxJava를 사용하고 있지만, 아직까지(부끄럽게도) 항상 동작이 헷갈리는 함수 2개가 있다. 바로 subscribeOn() 과 observeOn()이다. 이미 많은 블로그들의 글을 읽어봤지만, 여전히 »

Redis Sorted Set

나는 과일 장수이다. 그리고 나는 판매하는 과일의 가격을 아래와 같이 손님들에게 보여주고 있다. 이 때, 아래와 같은 조건들을 만족해야 한다. 각 과일의 가격은 자주 업데이트된다. 각 »

Armeria의 Circuit breaker 사용해보기

Circuit Breaker란? 만약 예상치 못한 장애(ex. 네크워크 이슈, 서버가 내려감)가 발생하여, 어떤 한 원격 서버가 요청에 대한 응답을 내리지 못하는 상태라고 가정해보자. 이러한 상황에서 »