Ich habe einen Prozess, der auf ein lauscht IP:port
- in der Tat ist es Spark-Streaming, das eine Verbindung zu einem Socket herstellt. Das Problem ist, dass ich irgendwie einen Server erstellen möchte, der eine Verbindung zu einem Port herstellt, und Daten von einem anderen Port auf diesen Server gestreamt werden.
Im Spark-Streaming-Beispiel wird beispielsweise das Dienstprogramm netcat verwendet nc -lk 5005
. Ich habe jedoch einen anderen Dienst, der auf eingehende Nachrichten wartet und dann eine Nachricht ausspuckt. Ich brauche also eine Art Server, der Nachrichten von Service A abhören und an Spark übergeben kann.
Mein Dienst A stützt sich auf Steckdosen. Und mein Spark-Konsument ist auf Steckdosen angewiesen.
Hier ist, was ich bisher getan habe, die Weiterleitung von Port zu Port, aber dies scheint nicht zu funktionieren:
nc -X 4 -x 127.0.0.1:5005 localhost 5006
Mit der Idee, dass der Service A:5005
-> Socket -> 5006
-> Spark
Ich kann nicht den richtigen Weg finden, um diese Arbeit zu machen.
Einige Antworten haben Folgendes vorgeschlagen:
socat tcp-l:5005,fork,reuseaddr tcp:127.0.0.1:5006
Der Empfänger meiner Zündkerze kann oder kann keine Verbindung herstellen. Ich erhalte den Fehler:Error connecting to 127.0.0.1:5006 - java.net.ConnectException: Connection refused