2014-10-29 2 views
1

나는 Akka 2.4 TCP API에 관해 질문이있다.Scala Akka TCP Actors

나는 서버를 운영하고 있고 Akka TCP에 2 개의 TCP 서버를 가지고 있는데, 하나는 들어오는 클라이언트 용이고 다른 하나는 내 컴퓨터의 작업자 노드 용입니다 (다른 컴퓨터/IP에 있음). 클라이언트에 대한 현재 연결이 하나 있고 작업자 노드에 대한 연결이 하나 있습니다.

클라이언트에서 메시지를 받으면 그 정보 중 일부를 작업자 노드로 전달하려고하지만 클라이언트를 실행하는 스레드에서 작업자 노드 연결을 나타내는 TCP Akka Actor가 좋아 보이지 않습니다. Akka Actor, 메시지를 Akka Actor 작업자 노드로 보냅니다.

예를 들어, 클라이언트가 파일을 삭제하라는 메시지를 보내고 그 파일의 파티션이 작업자 노드에있는 경우 해당 작업자 노드에 파티션을 삭제해야한다는 TCP 메시지를 보내려고합니다 .

클라이언트 액터의 액터로부터 작업자 노드로 메시지를 보낼 수 있습니까? 액터가 TCP를 통해 작업자 노드 서버로 전달되어야합니까? workerActorRef ! msg을 정기적으로 수행하는 경우 전혀 수신하지 않으며 로깅도 표시되지 않습니다.

나는이 질문이 명확하지 않았기를 바라지 만 본질적으로 어떤 식 으로든 workerActorRef에 "을 TCP 소켓을 통해 보내라"와 비슷한 기능을 가질 수 있기를 바랍니다.

건배,

요한

+1

당신은 Akka Remoting을 전혀 보지 않았습니까? http://doc.akka.io/docs/akka/2.3.6/scala/remoting.html. 제대로 사용하면 원하는 것을 얻을 수 있어야합니다. Remoting의 위에 구축 된 것처럼 클러스터링을 조사 할 수도 있습니다. http://doc.akka.io/docs/akka/2.3.6/scala/cluster-usage.html – cmbaxter

+0

@cmbaxter 대답을 받아 들일 것입니다. 감사합니다 –

답변

3

는 전혀 Akka Remoting 봤어? 제대로 사용하면 원하는 것을 얻을 수 있어야합니다. Remoting 위에 구축 된대로 Clustering을 조사하고 싶을 수도 있습니다.

+0

정확히 내가 필요한 것 같습니다. 다시 한 번 감사드립니다! –

관련 문제