Nykymaailmassa, tiedot ovat tärkein ainesosa Internet-sovellusten joukosta ja sisältää tyypillisesti seuraavat:
- Sivukäynnit ja napsautukset
- Käyttäjän toimet
- Kirjautumisia vastaavat tapahtumat
- Sosiaalisen verkostoitumisen aktiviteetit, kuten tykkäykset, jakamiset ja kommentit
- Sovelluskohtaiset mittarit (esim. Lokit, sivun latausaika, suorituskyky jne.)
Tämä tietoja voidaan käyttää analytiikan suorittamiseen reaaliajassa palvelevat eri tarkoituksia, joista osa on:
- Mainosten toimittaminen
- Poikkeavien käyttäjien käyttäytymisen seuraaminen
- Haun näyttäminen osuvuuden perusteella
- Näytetään suositukset aiempien toimintojen perusteella
Ongelma: Kaikkien tietojen kerääminen ei ole helppoa, koska tietoja tuotetaan eri lähteistä eri muodoissa
Ratkaisu: Yksi tapa ratkaista tämä ongelma on käyttää viestijärjestelmää. Viestintäjärjestelmät tarjoavat saumattoman integraation hajautettujen sovellusten välillä viestien avulla.
Apache Kafka:
Apache Kafka on hajautettu julkaisutilausviestintäjärjestelmä, joka kehitettiin alun perin LinkedInissä ja josta tuli myöhemmin osa Apache-projektia. Kafka on nopea, ketterä, skaalautuva ja jaettu suunnittelun mukaan.
Kafka-arkkitehtuuri ja terminologia:
Aihe: Tiettyyn luokkaan kuuluvaa viestivirtaa kutsutaan aiheeksi
Tuottaja: Tuottaja voi olla mikä tahansa sovellus, joka voi julkaista viestejä aiheeseen
Kuluttaja: Kuluttaja voi olla mikä tahansa sovellus, joka tilaa aiheet ja kuluttaa viestejä
Välittäjä: Kafka-klusteri on joukko palvelimia, joista kutakin kutsutaan välittäjäksi
Kafka on skaalautuva ja mahdollistaa monenlaisten klustereiden luomisen.
- Yhden solmun yhden välittäjän klusteri
- Yhden solmun monenvälittäjäklusteri
- Useita solmuja Useita välittäjäklustereita
Yhden solmun yhden välittäjä
Mikä on ZooKeeperin rooli?
Jokainen Kafka-välittäjä koordinoi muiden Kafka-välittäjien kanssa ZooKeeper-sovellusta. ZooKeeper-palvelu ilmoittaa tuottajille ja kuluttajille uusien välittäjien läsnäolosta tai välittäjän epäonnistumisesta Kafka-järjestelmässä.
Yhden solmun useita välittäjiä
Useita solmuja Useita välittäjiä
Kafka @ LinkedIn
LinkedIn Newsfeedin tarjoaa Kafka
LinkedIn-suositukset tarjoaa Kafka
LinkedIn-ilmoitukset tarjoaa Kafka
Huomautus: Tämän lisäksi LinkedIn käyttää Kafkaa moniin muihin tehtäviin, kuten lokin seurantaan, suorituskykymittareihin, hakujen parantamiseen.
Kuka muu käyttää Kafkaa?
DataSift: DataSift käyttää Kafkaa seurantatapahtumien kerääjänä ja seuraamaan käyttäjien datavirtojen kulutusta reaaliajassa
Wooga: Wooga käyttää Kafkaa kokoamaan ja käsittelemään seurantatietoja kaikista Facebook-peleistään (isännöi eri palveluntarjoajilta) keskeisessä paikassa
Spongecell: Spongecell käyttää Kafkaa koko analyysinsä ja seurantaputkistonsa ajamisessa sekä reaaliajassa että ETL-sovelluksissa
Loggly: Loggly on maailman suosituin pilvipohjainen lokien hallinta. Se käyttää Kafkaa tukkien keruuseen.
Vertaileva tutkimus: Kafka vs. ActiveMQ vs. RabbitMQ
Kafkalla on tehokkaampi tallennusmuoto. Jokaisessa viestissä on keskimäärin 9 tavua Kafkassa verrattuna 144 tavuun ActiveMQ: ssa.
Sekä ActiveMQ: ssa että RabbitMQ: ssa välittäjät ylläpitävät jokaisen viestin toimitustilan kirjoittamalla levylle, mutta Kafkan tapauksessa levyä ei ole kirjoitettu, joten se on nopeampi.
sql-palvelimen perusteet aloittelijoille
Kun Kafka otetaan laajasti käyttöön tuotannossa, se näyttää olevan lupaava ratkaisu reaalimaailman ongelmien ratkaisemiseen. Apache Kafka -koulutus voi auttaa sinua pääsemään vertaistasi eteenpäin reaaliaikaisessa analyytikkourassa. Aloita Apache Kafka -opetusohjelmalla tässä .
Onko sinulla kysymys meille? Mainitse se kommenttiosassa ja palaamme sinuun.
Aiheeseen liittyvät julkaisut: