Ich habe gerade angefangen Kafka zu lernen. Ich versuche also, eine Social-Media-Webanwendung zu erstellen. Mir ist ziemlich klar, wie man Kafka für mein Backend verwendet (Kommunikation vom Backend zu Datenbanken und anderen Diensten).Ist ein Web-Frontend, das direkt an einen Kafka-Broker produziert, eine tragfähige Idee?
Ich bin mir jedoch nicht sicher, wie Frontend mit Backend kommunizieren soll. Ich dachte über eine Architektur nach: Frontend -> Kafka -> Backend.
Frontend fungiert als Hersteller und Backend als Verbraucher. In diesem Fall hätte das Frontend angeblich alle erforderlichen Ressourcen, um es dem Kafka-Broker zu veröffentlichen (selbst wenn ich Sicherheit auf Kafka implementiere). Nun, ist dieses Szenario möglich:
Nehmen wir an, ich imitieren das Frontend und absurde/ungültige Nachrichten an meinen Kafka-Broker. Jetzt kann ich diese Nachrichten behandeln und filtern, wenn sie mein Backend erreichen. Aber ich weiß, dass Kafka diese Nachrichten vorübergehend speichert. Wäre mein Kafka-Server nicht mit DDOS-Problemen konfrontiert, wenn solche "gefälschten" Nachrichten in großem Umfang veröffentlicht werden, da sie sie sowieso speichern, da sie nicht ausgefiltert werden, bis sie tatsächlich vom Backend konsumiert werden?
Wenn ja, wie kann ich das verhindern?
Oder ist das keine gute Option? Ich kann auch versuchen, REST für die Frontend/Backend-Kommunikation zu verwenden, und dann wird Kafka vom Backend verwendet, um mit Datenbank (en) und anderen Dingen zu kommunizieren.
Oder ich kann eine Middleware haben (wieder, REST), die solche Nachrichten erkennt und herausfiltert.
Möchten Sie den Grund für den Downvote erklären? Das ist eine echte Frage, die ich selbst mit vielen Recherchen nicht beantworten kann. Was kann ich noch tun, um diese Frage zu verbessern? – user3271166
Es wurde wahrscheinlich abgelehnt und für die Schließung gestimmt, da Sie keine spezifische Frage zu einem bestimmten Programmierproblem stellen, wie es in der Hilfe erforderlich und beschrieben ist. Es ist sehr weit gefasst und fragt nach einer Meinung ohne klare Umrisse dessen, was Sie gerade tun, was auf dieser faktenbasierten Plattform nicht erlaubt ist. Wenn das kein Wochenende später Abend wäre, wäre es sicher schon geschlossen. – Rob
Alles, was ich fragte, war: "Wenn mein Frontend Nachrichten an Kafka als Producer sendet, wie verhindere ich unerwünschte DDoS-Attacken oder ähnliches?" Ich bin mir nicht sicher, wie breit es war, aber ich werde versuchen, es in Zukunft besser zu formulieren. – user3271166