Eu tenho um processo que escuta um IP:port
- na verdade, é o spark streaming que se conecta a um soquete. A questão é que, de alguma forma, desejo criar um servidor que se conecte ao spark em uma porta e os dados sejam transmitidos para esse servidor a partir de outra porta.
Por exemplo, o exemplo de streaming em spark usa o utilitário netcat (por exemplo nc -lk 5005
). No entanto, tenho outro serviço que escuta as mensagens recebidas e depois cuspe uma mensagem. Então, eu preciso de algum tipo de servidor que possa ouvir as mensagens do serviço A e passá-las para acionar.
Meu serviço A depende de soquetes. E meu consumidor de faíscas depende de soquetes.
Aqui está o que eu fiz até agora é o encaminhamento de porta em porta, mas isso não parece funcionar:
nc -X 4 -x 127.0.0.1:5005 localhost 5006
Com a ideia de que o serviço A:5005
-> socket -> 5006
-> Spark
Não consigo encontrar a maneira correta de fazer isso funcionar.
Algumas respostas sugeriram o seguinte:
socat tcp-l:5005,fork,reuseaddr tcp:127.0.0.1:5006
Meu receptor de vela de ignição não parece ou não consegue se conectar. Eu recebo o erro:Error connecting to 127.0.0.1:5006 - java.net.ConnectException: Connection refused