Ho un processo che ascolta un an IP:port
- in effetti è lo streaming spark che si collega a una presa. Il problema è che desidero in qualche modo creare un server che si connette a spark su una porta e i dati vengono trasmessi in streaming su questo server da un'altra porta.
Ad esempio, l'esempio dello streaming spark utilizza l'utilità netcat (ad esempio nc -lk 5005
). Tuttavia, ho un altro servizio che ascolta i messaggi in arrivo e quindi sputa un messaggio. Quindi ho bisogno di un qualche tipo di server in grado di ascoltare i messaggi dal servizio A e passarli a scintilla.
Il mio servizio A si basa su socket. E il mio consumatore di scintille si affida alle prese.
Ecco quello che ho fatto finora è l'inoltro da una porta all'altra, ma questo non sembra funzionare:
nc -X 4 -x 127.0.0.1:5005 localhost 5006
Con l'idea che il servizio A:5005
-> socket -> 5006
-> Spark
Non riesco a trovare il modo corretto per farlo funzionare.
Alcune risposte hanno suggerito quanto segue:
socat tcp-l:5005,fork,reuseaddr tcp:127.0.0.1:5006
Il mio ricevitore per candele non sembra o non riesce a connettersi. Ottengo l'errore:Error connecting to 127.0.0.1:5006 - java.net.ConnectException: Connection refused