Jest to drugie podejście Wizualizacja autobusów w Elasticsearch i Kibana. Tym razem wykorzystam napisany wcześniej program w Kafka Streams do obliczenia prędkości i orientacji autobusów, a następnie wrzucę Logstash-em z Apache Kafka do Elasticsearch.Spis treścihide1Środowisko2Data Flow3Wrzucanie rekordów do Apache Kafka4Logstash5Elasticsearch6Kibana7Mapa8Działanie9RepozytoriumPodziel się:Dodaj do ulubionych:PodobneŚrodowisko Docker-compose już trochę puchnie. Znajduje się w nim Elasticsearch, Kibana, Zo...
Bazy danych i XML 1670 dni, 8 godzin, 14 minut temu 66 źrodło rozwiń
Obrazy Dockera są łatwe w obsłudze. Nie musimy instalować konkretnej wersji środowiska, bibliotek i innych zależności. Wszystko powinno być zamknięte w abstrakcji zwanej kontenerem. Możemy je uruchamiać i skalować w Docker Swarm lub Kubernetes. W tym wpisie zajmiemy się dockeryzacją aplikacji Kafka Streams na przykładzie strumienia dla lokalizacji autobusów ZTM przedstawionym w poprzednim wpisie.Spis treścihide1Zmiany w pom.xml2Zmiany w kodzie aplikacji Kafka Streams3Dockerfile4Zbudowanie obrazu Docker5D...
Programowanie rozproszone 1684 dni, 7 godzin, 17 minut temu 34 źrodło rozwiń
Czasami klasyczne Kafka DSL nam nie wystarcza. Processor API pozwala na dowolne zdefiniowanie procesora, a co najlepsze, wykorzystanie State Store. W tym przypadku obliczymy prędkość, kierunek i dystans pojazdów komunikacji miejskiej w Warszwie.Spis treścihide1Rozkład jazdy2Źródło3Plan4Dlaczego Processor API?5No to lecimyOdczyt danych z KafkiTestyTopologiaProcesorTesty6Czy z prawdziwą Kafką też działa?7Repozytorium8PodsumowaniePodobneRozkład jazdyKafka Streams 101 – de/serilizacjaKafka Streams 102 – Wyją...
Programowanie rozproszone 1697 dni, 7 godzin, 52 minuty temu 29 źrodło rozwiń
Nie wyobrażam sobie programowania bez pisania testów. Gdy śpieszy mi się i o nich „zapominam”, potem i tak poprawiam kod przez jakąś głupotę. Poprawiają jakość i przyśpieszają czas tworzenia oprogramowania. Nie wierzysz?Spis treścihide1Rozkład jazdy2Co zyskamy?3Zależności4Testowalny kod Kafka Streams5Test 1 – LowercaseStreamTopologyTestDriverTest właściwy6Test 2 – SerDeJsonStream7Repozytorium8WnioskiPodobneRozkład jazdyKafka Streams 101 – de/serilizacjaKafka Streams 102 – Wyjątki i Dead Letter QueueKafka...
Sztuka programowania 1712 dni, 7 godzin, 14 minut temu 43 źrodło rozwiń
Błędy zdarzają się każdemu. Prędzej czy później nasza aplikacja Kafka Streams dostanie wiadomość, która ją zabije (Poison Pill). Niestety uruchomienie jej ponownie nie pomoże, dopóki wiadomość nie zniknie z kolejki. W tym wpisie spróbujemy obsłużyć takie wiadomości i zapisać je do Dead Letter Queue.Spis treścihide1Rozkład jazdy2Poison Pill3Rozwiązania4Problemy5Dead Letter Queue6Filtrowanie wadliwych rekordówPodczas deserializacjiPodczas transformacji7Wykorzystanie Dead Letter QueuePodczas deserializacjiP...
Programowanie rozproszone 1726 dni, 7 godzin, 23 minuty temu 29 źrodło rozwiń
Przetwarzanie strumieniowe jest dzisiaj standardem. Skoro i tak większość osób korzysta z Apache Kafka jako kolejki, czemu nie spróbować Kafka Streams? Jest to rozwiązanie skalowalne i nie wymaga specjalnych środowisk typu YARN czy Apache Mesos. Ten wpis rozpoczyna serię wpisów dotyczących Kafka Streams.Spis treścihide1Cel2Podstawy3Środowisko4Pierwszy strumień – LowerCaseStream5De/Serializacja z łapyPoison Pill6De/Serializacja nie z łapyPoison Pill7Co dalej?8RepozytoriumPodobneCel We wpisach z tego cykl...
Programowanie rozproszone 1740 dni, 6 godzin, 56 minut temu 48 źrodło rozwiń