Apache Kafka ha lo scopo principale di ottimizzare la trasmissione e l’elaborazione di flussi di dati che vengono scambiati tramite il collegamento diretto tra destinatario e fonte di dati. Kafka agisce come un’istanza di messaggistica tra mittente e destinatario e offre soluzioni alle tipiche difficoltà che possono insorgere in questo tipo di collegamenti. In questo modo la piattaforma è anche in grado di risolvere il problema della mancata memorizzazione temporanea di dati o messaggi, quando il destinatario (ad esempio a causa di problemi di rete) non è disponibile.
In più una coda Kafka ben configurata impedisce un sovraccarico del destinatario da parte del mittente. Questo avviene sempre quando le informazioni devono essere inviate in maniera più rapida tramite collegamento diretto, per essere ricevute ed elaborate. Inoltre il software Kafka è adatto anche nel caso in cui il sistema target dovesse ricevere il messaggio, ma collassasse durante il processo di elaborazione. Mentre normalmente il mittente, nonostante il collasso, potrebbe credere che l’elaborazione sia andata a buon fine, con Apache Kafka riceverà una notifica dell’errore.
Rispetto ai servizi che gestiscono solo la coda dei messaggi come le banche dati, Apache Kafka è tollerante agli errori e questo crea nel software le premesse per un’elaborazione continua di messaggi, ossia di dati. In combinazione con un’alta scalabilità e la possibilità di distribuire le informazioni trasportate a piacere su molti sistemi (log delle transazioni distribuito), Apache Kafka è un’eccellente soluzione per tutti quei servizi che devono garantire un salvataggio e un’elaborazione rapida dei dati nonché un'alta disponibilità.