Swagger Discriminator

이전에는 oneOf, anyOf, allOf 등의 키워드를 통해서 어떻게 request 나 response에 해당하는 객체의 validation을 할지 간략히 알아봤었다. 사실 이전에 소개한 기능들

Java SecureRandom

자바 프로젝트를 하다 보면 랜덤한 데이터를 즉석에서 만들어 뿌려줘야 할 때가 있다. 랜덤한 정수를 만들어내는 예제에서 많이 사용하는 SecureRandom은 내

Java Reactive Programming Flux Generate

이전 강의에서는 Flux가 무엇인지에 대해 주로 알아봤었다. Flux를 언제, 어떻게 생성해야 할까? create를 사용한 Flux 생성 Flux.create(fluxSink -> { fluxSink.next(1); fluxSink.next(2); fluxSink.complete(); }).subscribe(...) 처럼 cre

Javascript Weakref

js 스터디를 진행하면서, 자바스크립트는 명시적으로 객체를 메모리에서 해제하는 방법이 없는 언어라는 이야기가 나왔다. 그럼 객체가 계속해서 메모리에 남아있는 현

Kafka Consumer Group Rebalancing

카프카를 실제 운영환경에서 사용하다 보면 마주치게 되는 몇 가지 이슈가 있다. 오늘은 그 중 컨슈머 그룹의 파티션 리밸런싱에 대해 좀 정리해봤다. https://kafka.apache.org/0101/javadoc/org/apache/kafka/clients/consumer/KafkaConsumer.html 컨슈머 그룹 리밸런

Choreography Saga Pattern

많은 서비스들이 MSA로의 전환을 추진하고 있다. 하지만 모놀리식과는 달리 MSA 환경에서는 트랜잭션 처리가 상당히 어려워진다. 오늘은 MSA에서 트랜잭션을 나이