Home
Study Log
Cancel

Segment and Log Compaction Policy

Segment 토픽들은 파티션으로 구성되 있음 파티션들은 segment로 이루어져 있음 오직 기록되고 있는 segment만 활성화 되어있음 세그먼트는 두개의 index(파일)로 구성됨 offset : kafka가 읽어야하는 위치를 찾기위한 인덱스...

Travis CI에서 Spring boot app 테스트하기

Spring Boot 앱을 CI를 통해서 테스트를 하고 도커로 배포하기 하려는 과정중에 테스트가 실패하는 현상이 발생했다. 이유는 Spring Boot 앱의 테스트 코드가 배포환경의 Database에 의존했기 때문이었다. 이 문제들 다음과 같이 해결하였다. 1. Mockito를 이용해서 각각의 layer들을 독립적으로 테스트하도록 리펙토링 처음 ...

ETL Pipeline

ETL Pipeline ETL Pipeline이란 input source로 부터 데이터를 추출하고(extracting), 데이터를 변환하고, database, data mark, data warehouse에 저장하는 과정들을 말한다. 출처 Extract, Transform, Load 의 약자이다. Extract 데이터는 다양한 source...

Java에서 array의 타입

자바에서 배열은 primitive type인가 아니면 object인가? 위와 관련해서 다음 글을 찾아보았고 번역해보았다. Java에서 Array는 object로 간주된다. 이유는 array가 new 키워드로 생성될수 있기 때문이다. new 키워드는 항상 object를 생성하기 위해서 사용된다. array의 direct parent class or s...

Apache Kafka 장단점

Apache Kafka의 장점 Low Latency : 10 millisecond까지 low latency value를 제공한다. High Throughput : low latency 덕분에, Kafka는 메시지들을 더 많이, 빠르게 전달할수 있다. Fault Tolerance : Kafka는 clu...

[Leetcode] Partition Equal Subset Sum - memoization 적용

FANG에서 출제된 문제는 보기보다 간단한 경우가 많은것 같다. 처음에는 backtracking으로 접근을 하긴 했지만 시간복잡도가 O($2^N$)이기 때문에 접근을 포기했다. DP로 풀자니 어떤 부분을 subproblem으로 나눠야 하는지 잘 보이지 않았고, 더 오래 고민했으면 풀수도 있었을것 같다. 다음은 Top down DP로 풀이한 코드이다....

[BOJ 1038-감소하는수] 집합이론을 이용한 추론

문제에서 과연 몇번째 감소하는 수까지 존재하는 것일까? 잠깐 생각했을때는 감소하는 수는 무한히 존재할것 그렇지 않다. 결론적으로는 1023개, 1022번째 까지 가능하다. {0,1,2,3,4,5,6,7,8,9}와 같은 집합이 있을때 이를 가지고 감소하는 수를 만들수 있는 경우는 몇가지 일까? 여기서 우리는 strictly decresing 한 경우...

[Leetcode] Smallest Integer Divisible by K

위 문제에 수열이 1,11,111,1111,… 이므로 다음 식이 성립한다. next = prev * 10 + 1 이 문제의 핵심은 다음수와 현재수 사이에 모듈러 관계를 파악하는 것이다. 결론적으로 말하면 모듈러 관계는 다음과 같다. A = prev % K B = next % K = (A*10 + 1) % K 이제 위식을 좀더 풀어 쓰면 다...

[Inversion of Control 이해하기] Chapter 4 - IoC Container

IoC Container IoC Container(DI Container)는 automatic dependency injection을 구현하기 위한 프레임워크이다. IoC는 객체생성과 life-time을 관리하고 클래스에 대한 의존성을 주입한다. IoC 컨테이너는 run time에 특정 class 객체를 생성하고 모든 dependency 객체들을 ...

[Inversion of Control 이해하기] Chapter 3 - Dependency Injection

Dependency Injection(DI)는 IoC를 구현하기위해 사용되는 디자인 패턴이다. DI는 의존하는 객체들을 class 밖에서 생성하도록 허락하며, 그러한 객체들을 여러가지 방법을 통해서 class에 제공해준다. Dependency Injection pattern은 3가지 유형의 클래스를 포함한다. Client Class:...

Trending Tags