일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- reactive
- coursera
- avo
- aws
- 플레이 프레임워크
- gradle
- Elk
- Spring
- kafkastream
- scala 2.10
- springboot
- RabbitMQ
- spring-cloud-stream
- 한빛미디어
- play framework
- kafka streams
- schema registry
- kafkastreams
- Slick
- scala
- 카프카
- enablekafkastreams
- spring-kafka
- statestore
- kafka interactive query
- Elasticsearch
- Logstash
- spring-batch
- Kafka
- confluent
- Today
- Total
목록분류 전체보기 (167)
b
18/01/30 idea 카프카 자체의 data recovery는 훌륭하다. 당연한게 파일로 저장하고 심지어 여러 셋트로 저장한다. 유실되는 경우는 저장 기간을 넘기거나, 1개의 IDC에만 설치한 후 IDC가 물에 잠기는 방법 뿐이다. 이건 다 아는 얘기고, 문제는 이 kafka 를 기반으로 한 streams 를 서비스 할 때이다. 1. Kafka는 기본적으로 1 개의 TopicPartion 에서 1 개의 Consumer Group의 노드가 접속 한다.2. Kafka Topic은 KStream/KTsble/StateStore 등을 통해서 각각의 topic-partition을 local DB에 싱크를 맞춘후 materilized 한다 (비동기/latency 존재) 우선 1번의 문제부터....1. 해당 To..
밑에는 잡담이니 결론 부터* 결론 Ditmars.SR3 사용, Spring 4, Boot 1.5.x는 기존대로 유지 * Kafka 는 0.1x 유지 * spring-cloud-stream-reactive & reactor 3.1.X 사용 ( rxjava2 버림 ) * 우리가 사용중인 Spring Cloud Dalston SR5는 Ditmars 버전 매트릭스에 맞지 않다 이전 버전인 Chelsea.SR2를 고려해야한다.* 하지만 Ditmars.SR3 버전으로 리서치를 진행 할 예정이다. * Ditmars.SR3 은 spring-kafka 1.1.7 이므로 @EnableStream 사용등은 커스텀마이징을 해야 하기 때문에 추천버전은 Kafka 0.10을 그대로 사용 해서 진행 한다 Ditmars.SR3 의존..
18/01/26 idea 구현해야 할 도메인은 https://www.confluent.io/blog/building-a-microservices-ecosystem-with-kafka-streams-and-ksql/필요한 내용은- 정확한 request/ responses - scale out - high availability - ktable & state-store를 기반으로 한 local - storage의 사용블로그 글과 예제에 대해서는 100퍼센트 공감이 되지만, 몇몇 부분에서는 '구현' 자체가 고민스러움. 나 뿐 아니라 다른 이의 구현을 살펴보아도 동일하다. 아래의 github 개발자도 위의 블로깅 내용을 보고 example project를 작성하였지만 같은 문제점을 그대로 노출하고 있다.. - ..
Java 에 대한 아쉬움으로 Scala 나 Haskell 을 본지는 몇년 되었고, 최근 들어 RxJava 프로젝트를 몇 달 째 참여하고 있으면서 이 책을 기다렸다. 번역 하신분( 오현석님 책은 다 구입을 한 것 같다)이나 주제가 분명히 나에게 도움이 될 거라고 생각했기 때문이였다. (뭔가 어색한 제목은... 기분탓이다. 저자분도 이거에 대한 고민을 하셨다고... - 어디서 봤지?Slack이었나...) Sodium 이라는 프레임웍을 기반으로 Swing을 확장한 swidget.* 으로 설명을 시작한다. 처음에는 웬 스윙..? 이라고 생각했으나 중간 중간 나오는 그림과 스윙 기반의 예제는 나름 도움이 되는 보조역을 해주었다. 하지만 너무 많은 UI 쪽 코드가 집중력이 분산된 건 좀 아쉬웠다. 그리고 처음 보는..
개인적으로는 스칼라나 하스켈 못지 않게 어려운 (그리고 생각과는 많이 다른) 언어가 자바스크립트인 것 같다. 그 난해함에 추가되는 문제는 생태계가 가장 빠르게 변화하는 언어라 단순히 언어 스펙을 공부하는 것만으로는 충분하지 못하다는 것이다. 이 책은 이러한 문제를 조금은 해결 할 수 있는 책이 아닌가 생각이 된다.프로그래밍을 전혀 모르는 사람에게는 의미 없는 책이지만, ES3 부터 자바스크립트를 사용한 개발자나, 다시 한번 ES6 수준에서 알고 있는 지식을 정리하려는 사람들에게 추천할 만한 내용을 가지고 있다.예를 들면 "30"* 3 = 90 이 나온다던가 let a = [1,2,3,] 처럼 마지막 콤마를 허용한다는 것 같은 것... arrow function 에서 this나 arguments가 펑션과 ..
결론적으로 @SpringBootApplication 과 Main method으로 시작되는 startup은 불가능하지만, 그 부분을 생성자 부분으로 변경한 다면 사용 가능하다. 다만, 첫 시작은 dependency lookup 방식으로 bean을 가져와야 한다. (이건 올해 초 얘기고, 지금은 https://github.com/spring-cloud/spring-cloud-function 을 이용하면 된다)테스트환경intellij 2016.3gradlespring-boot 1.4.3intellij Spring Initializr 의 셋팅이후 build.gradle은 다음과 같이 셋팅하였다. boot를 이용한 gradle의 task package 나 assemble는 main이 없기때문에 사용이 힘들고 ma..
* 주키퍼의 Origin – Yahoo 에서 개발 – Pig 처럼 많인 프로젝트가 동물 이름이었고, 이러한 시스템들은 동물원의 동물과 같다고 느낌 -> 사육사(Zookeeper)* 주키퍼가 사용된 예 – HBase : 클러스터 마스터 선출과 가용 서버들의 목록을 저장 / 클러스터 메타데이터 관리 – Kafka : 장애 감지/ 토픽 발견/ 토픽 생성 소모 상태를 관리 – Solr : 솔라클라우드에서 클러스터의 메타데이터 저장, 업데이트 관리 – Facebook message : 샤딩/ 장애복구/ 서비스발견을 관리 – Druid : 내부 통신에 이용* 주키퍼 모드 – Standalone : 단독 서버, 복제 안됨 – quorum(쿼럼)* Znode – 용량제한 1MB – ACL(접근권한관리)를 할 수 있다 ..
다른 JVM 언어처럼 Scala 역시 컴파일시점에 type 정보를 잃어버린다.SCALA는 JVM의 type erasure issue 를 TypeTag(이전에는 Manifest)로 해결 할 수 있다// TODO undeprecated until Scala reflection becomes non-experimental // @deprecated("Use `scala.reflect.ClassTag` (to capture erasures) or scala.reflect.runtime.universe.TypeTag (to capture types) or both instead", "2.10.0") type Manifest[T] = scala.reflect.Manifest[T]scala> def evenElems..