청취하는 프로세스가 있습니다 IP:port
-실제로 소켓에 연결되는 스파크 스트리밍입니다. 문제는 어떻게 든 한 포트에서 스파크에 연결하는 서버를 만들고 싶습니다. 데이터는 다른 포트 에서이 서버로 스트리밍됩니다.
예를 들어, 스파크 스트리밍 예는 netcat 유틸리티 (예 :)를 사용합니다 nc -lk 5005
. 그러나 들어오는 메시지를 수신 한 다음 메시지를 뱉어내는 다른 서비스가 있습니다. 따라서 서비스 A의 메시지를 듣고 스파크에 전달할 수있는 일종의 서버가 필요합니다.
내 서비스 A는 소켓에 의존합니다. 그리고 내 스파크 소비자는 소켓에 의존합니다.
여기 내가 지금까지 한 일은 포트에서 포트로의 포워딩이지만 작동하지 않는 것 같습니다.
nc -X 4 -x 127.0.0.1:5005 localhost 5006
서비스 A:5005
-> 소켓-> 5006
-> 스파크 라는 아이디어로
이 작업을 수행하는 올바른 방법을 찾지 못하는 것 같습니다.
일부 답변은 다음을 제안했습니다.
socat tcp-l:5005,fork,reuseaddr tcp:127.0.0.1:5006
스파크 소켓 리시버가 연결되지 않거나 연결할 수없는 것 같습니다. 오류가 발생합니다.Error connecting to 127.0.0.1:5006 - java.net.ConnectException: Connection refused