Redis eller Kafka eller XYZ kan användas som buffert i ELK-stacken som du med rätta har märkt.
ES-folket publicerade ett blogginlägg igår om att använda Kafka i pipeline, men det kunde lika gärna ha varit Redis eller XYZ. De gör en bra poäng om NÄR en sådan buffert kan behövas och när den inte är det.
Det är en bra idé att ha en sådan buffert för att
- hantera händelsetoppar
- hantera ett potentiellt oåtkomligt ES-kluster
Om du inte förutser sådana beteenden, det vill säga du vet
- dina evenemang kommer alltid att ske i samma takt och/eller
- du är okej med att dina loggar skickas lite senare ifall du behöver uppgradera ditt ES-kluster
...då behöver du inte en sådan buffert. Dessutom kommer det att vara en mjukvara mindre du behöver för att hantera, övervaka och underhålla.
När det kommer till Elastic Stack-ekosystemet finns det inget som passar alla, det beror alltid på ditt exakta användningsfall och dina krav. Du måste fråga dig själv vad som är viktigt för dig, dina system och dina användare och sedan utforma din lösning därefter.