hvordan man bruger erstatte i java
I nutidens verden data er den vigtigste ingrediens af internetapplikationer og omfatter typisk følgende:
- Sidebesøg og klik
- Brugeraktiviteter
- Begivenheder svarende til logins
- Sociale netværksaktiviteter såsom likes, delinger og kommentarer
- Applikationsspecifikke metrics (f.eks. Logfiler, sideindlæsningstid, ydeevne osv.)
Dette data kan bruges til at køre analyser i realtid tjener forskellige formål, hvoraf nogle er:
- Levering af reklamer
- Sporing af unormal brugeradfærd
- Viser søgning baseret på relevans
- Viser anbefalinger baseret på tidligere aktiviteter
Problem: Det er ikke let at indsamle alle data, da data genereres fra forskellige kilder i forskellige formater
Løsning: En af måderne til at løse dette problem er at bruge et messaging-system. Meddelelsessystemer giver en problemfri integration mellem distribuerede applikationer ved hjælp af meddelelser.
Apache Kafka:
Apache Kafka er et distribueret publicer abonnementsmeddelelsessystem, der oprindeligt blev udviklet hos LinkedIn og senere blev en del af Apache-projektet. Kafka er hurtig, smidig, skalerbar og distribueret efter design.
Kafka Architecture and Terminology:
Emne: En strøm af meddelelser, der tilhører en bestemt kategori kaldes et emne
Producent: En producent kan være en hvilken som helst applikation, der kan offentliggøre meddelelser til et emne
Forbruger: En forbruger kan være enhver applikation, der abonnerer på emner og forbruger beskederne
Mægler: Kafka-klyngen er et sæt servere, som hver kaldes en mægler
Kafka er skalerbar og tillader oprettelse af flere typer klynger.
- Single Node Single Broker Cluster
- Single Node Multiple Broker Cluster
- Flere noder Flere mæglerklynger
Single Node Single Broker
Hvad er ZooKeeper's rolle?
Hver Kafka-mægler koordinerer med andre Kafka-mæglere ved hjælp af ZooKeeper. Producenter og forbrugere underrettes af ZooKeeper-tjenesten om tilstedeværelsen af nye mæglere eller svigt hos mægleren i Kafka-systemet.
Single Node Multiple Brokers
længden af en matrix i javascript
Flere noder Flere mæglere
Kafka @ LinkedIn
LinkedIn Newsfeed er drevet af Kafka
LinkedIn-anbefalinger er drevet af Kafka
LinkedIn-underretninger er drevet af Kafka
Bemærk: Bortset fra dette bruger LinkedIn Kafka til mange andre opgaver som logovervågning, præstationsmålinger, søgeforbedring, blandt andre.
Hvem bruger ellers Kafka?
DataSift: DataSift bruger Kafka som en samler af overvågning af begivenheder og til at spore brugernes forbrug af datastrømme i realtid
Wooga: Wooga bruger Kafka til at samle og behandle sporingsdata fra alle deres Facebook-spil (hostet hos forskellige udbydere) på en central placering
Svampecelle: Spongecell bruger Kafka til at køre hele sin analyse- og overvågningsrørledning, der kører både realtids- og ETL-applikationer
hvordan man kører atom python
Loggly: Loggly er verdens mest populære skybaserede loghåndtering. Det bruger Kafka til logsamling.
Sammenlignende undersøgelse: Kafka vs. ActiveMQ vs. RabbitMQ
Kafka har et mere effektivt lagerformat. I gennemsnit har hver meddelelse en overhead på 9 byte i Kafka mod 144 byte i ActiveMQ
I både ActiveMQ og RabbitMQ opretholder mæglere leveringstilstand for hver besked ved at skrive til disk, men i tilfælde af Kafka er der ingen diskskrivning, hvilket gør den hurtigere.
Med den brede anvendelse af Kafka i produktionen ser det ud til at være en lovende løsning til løsning af virkelige verdensproblemer. Apache Kafka-træning kan hjælpe dig med at komme foran dine jævnaldrende i en realtids analytisk karriere. Kom godt i gang med en Apache Kafka-vejledning her .
Har du et spørgsmål til os? Nævn det i kommentarfeltet, og vi vender tilbage til dig.
Relaterede indlæg:
Hvad du har brug for til en karriere inden for realtidsanalyse