일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Slick
- coursera
- Spring
- spring-kafka
- 플레이 프레임워크
- kafkastream
- Elasticsearch
- gradle
- spring-batch
- Elk
- Logstash
- avo
- reactive
- schema registry
- 카프카
- scala
- scala 2.10
- kafka streams
- kafkastreams
- kafka interactive query
- statestore
- enablekafkastreams
- springboot
- confluent
- spring-cloud-stream
- aws
- RabbitMQ
- play framework
- Kafka
- 한빛미디어
- Today
- Total
목록2018/03 (11)
b
대화식 쿼리를 사용하려면 hostname:port 형식의 StreamsConfig.APPLICATION_SERVER_CONFIG 를 설정하면 된다. 카프카 스트림 인스턴스가 키를 기반으로 한 쿼리를 받으면 현재 인스턴스의 로컬 저장소에 포함되는지를 찾는다. 더 중요한 것은 로컬 저장소에 없을 경우 키가 포함된 Store를 찾고 싶은 것이다. 카프카 스트림은 동일한 application ID와 APPLICATION_SERVER_CONFIG 가 정의된 인스턴스에 정보를 검색할 수 있는 몇가지 메소드가 제공된다.아래의 메소드들은 KafkaStreams instance의 method이다.- allMetadata : 모든 StreamsMetadata 목록을 반환 - allMetadataForStore : Stor..
처음에는 이 메소드의 효용성? 사용범위? 에 대해서 이해하지 못했다. 그냥 최초에 Streams Application이 기동될때, State 가 migration 되는 동안 Application 의 health 를 DOWN 정도으로 바꾸는 정도? (즉 Created -> Running) 최근에 하나 더 든생각은 isRunning 상태에서 다른 상태로 빠질 경우이다. (isRunning은 RUNNING or REBALCING 이다) 이 때에는 API로 제공되는 KeyStore를 query하면 에러가 발생 할 것이다. 그러므로this.kafkaStreams.setStateListener((newState, oldState) -> { if(newState.isRunning() ){ this.ready = tr..
몇개의 파티션으로 구성할 것인가에 대한 도움 글https://www.confluent.io/blog/how-to-choose-the-number-of-topicspartitions-in-a-kafka-cluster/ 읽고 나서 내 맘대로 정리한 내용- '파티션 갯수가 변경이 된다면, 제대로 메시지가 전달 안될 수 있다. 그래서 현재 필요보다 파티션 수를 많이 구성하라. 파티션 갯수를 변경할 필요가 없도록 해라. (향후 1-2년치 트래픽도 고민해서 충분한 파티션 수를 고민할것)- 그때 문제점은 OS의 open file handle이 커지게 된다. (모든 세그먼트 * 2)- 리더 선출은 주키퍼와 관련된 작업이 포함되고 이것은 선행적이다. 그래서 한 브로커에 파티션 리더가 많다면 선행적으로 파티션 리더를 변경..