일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 그리디
- 읽기쉬운코드
- 스프링
- 클린코드
- 코딩테스트
- 프레임워크
- JPA
- 자바
- ES
- 그리디알고리즘
- Baekjoon
- framework
- Java
- 백준
- database
- API
- Elasticsearch
- 엘라스틱서치
- cleancode
- 애자일기법
- 알고리즘
- 개발자
- 개발
- spring boot
- 코드
- Spring
- 데이터베이스
- 코딩
- 애자일프로그래밍
- mongoDB
- Today
- Total
목록STREAM (4)
튼튼발자 개발 성장기🏋️

1. 카프카 스트림즈란? 카프카 스트림즈(Kafka Streams)는 카프카에서 스트리밍 데이터를 실시간으로 처리하고 분석하기 위한 자바 라이브러리다. 기존의 데이터 처리 시스템과는 달리, 카프카 스트림즈는 데이터가 들어오는 즉시 이를 처리하고 결과를 다시 카프카 토픽에 기록할 수 있다. 카프카 스트림즈는 MSA 아키텍처에 적합하며, 높은 처리량과 확장성을 제공한다. 스트림즈 애플리케이션은 스레드를 1개 이상 생성할 수 있으며, 스레드는 1개 이상의 태스크(Task)를 갖는다.이 태스크의 수는 파티션의 수와 일치하도록 한다. 기본적으로 라이브환경에서는 안정적으로 운영할 수 있도록 2개 이상의 서버로 구성하여 스트림즈 애플리케이션을 운영한다.1.1 KStreamsKStreams는 카프카 스트림즈에서 가장 ..

1. Stream을 활용한 최대값, 최소값, 개수 추출하기 /** * Returns the minimum element of this stream according to the provided * {@code Comparator}. This is a special case of a * reduction. * * This is a terminal operation. * * @param comparator a non-interfering, * stateless * {@code Comparator} to compare elements of this stream * @return an {@code Optional} describing the minimum element of this stream, * or an..
Stream의 종결처리 과정을 이해하기 위해 Optional을 필수로 알아야하는 도구이다. Optional이 어떤 문제를 해결해주는걸까? 우리가 가장 많은 고민을 했던 NPE(NullPointException)가 Oprional의 사용 목적의 핵심이다. NPE는 Runtime error이기 때문에 실행 전까지 발견하기 쉽지가 않다. 현업에서도 종종 NPE가 발생해서 빠른 대응이 필요할 때도 있다. @Getter @Builder @ToString class User { private int id; private String name; private String email; private boolean isVerified; } public class Exercise { public static void ma..
Stream은 JAVA 8에서 추가 된 도구로써 함수형 인터페이스를 활용해서 데이터를 매우 간편하고 간결하게 가공할 수 있도록 도와준다. 이번 포스트에서는 이 Stream의 built in method에 대해서 알아보는 시간을 가진다. Stream은 데이터의 가공되는 흐름을 한 눈에 알아보기 쉽게 가독성을 향상시키는 장점이 있다. 이로인한 이유로 기존에 loop로 짰던 로직을 Stream으로 간결하고 직관적으로 대체가 가능하다. 또한 병렬처리도 가능하다. 다음 아래 내용은 Stream으로 변환하는 세 가지 방법을 소개한다. // Stream 변환 A방법 Stream nameStream = Stream.of("홍길동", "김길동", "박길동"); List names = nameStream.collect(..