2016-04-17 109 views
0

通過遵循Akka文檔,我可以在同一臺機器上啓動兩個角色(前端和後端),並且他們可以與每個角色交談其他。但是,當我嘗試將後端actor部署到另一臺機器(Linux)時,我遇到了啓動遠程處理的錯誤:如何遠程啓動一個Akka角色:akka-in-action chapter-remoting

============ 檢測到多個主要類,選擇一個運行:

[1] com.goticks.BackendMain 
[2] com.goticks.BackendRemoteDeployMain 
[3] com.goticks.FrontendMain 
[4] com.goticks.FrontendRemoteDeployMain 
[5] com.goticks.FrontendRemoteDeployWatchMain 
[6] com.goticks.SingleNodeMain 

輸入數:2

[info] Running com.goticks.BackendRemoteDeployMain 
INFO [Slf4jLogger]: Slf4jLogger started 
INFO [Remoting]: Starting remoting 

ERROR [NettyTransport]:未能結合/192.168.1.9:2551,關停的Netty傳輸

192.168.1.9是一個其他機器。

在backend.conf:

remote { 
    enabled-transports = ["akka.remote.netty.tcp"] 
    netty.tcp { 
    #hostname = "0.0.0.0" 
    hostname = "192.168.1.9" 
    port = 2551 
    } 
} 

我有一個基本的問題,部署的時候,開始在遠程JVM遠程演員,我們需要用戶登錄信息發送到遠程機器?

感謝,

回答

0

你並不需要用戶登錄信息,我認爲你的端口2551已經在主機= 192.168.1.9使用,你確定你沒有使用過去呢?

我也有同樣的問題,我不小心忘了後,關閉在同一端口上運行的程序我試圖運行該程序的第二次和它發生Exception in thread "main" org.jboss.netty.channel.ChannelException: Failed to bind to: /192.168.3.216:2552

+0

感謝你的幫助,@ user5025962。遠程機器上沒有2551空閒(192.168.1.9)。當我將代碼複製到遠程計算機,編譯並手動啓動爲後端ActorSystem時,它可以與本地計算機上的前端進行通信。 – CleanCoder88

0

我想補充有關的更多信息我剛纔的問題:檢測

多個主類,選擇一個運行:

[1] com.goticks.BackendMain 
[2] com.goticks.BackendRemoteDeployMain 
[3] com.goticks.FrontendMain 
[4] com.goticks.FrontendRemoteDeployMain 
[5] com.goticks.FrontendRemoteDeployWatchMain 
[6] com.goticks.SingleNodeMain 

Enter number: 2 

[info] Running com.goticks.BackendRemoteDeployMain 
[DEBUG] [04/18/2016 15:54:11.554] [run-main-0] [EventStream(akka://backend)]  logger log1-Logging$DefaultLogger started 
[DEBUG] [04/18/2016 15:54:11.555] [run-main-0] [EventStream(akka://backend)] Default Loggers started 
[INFO] [04/18/2016 15:54:11.591] [run-main-0] [akka.remote.Remoting] Starting remoting 
[ERROR] [04/18/2016 15:54:11.748] [backend-akka.remote.default-remote-dispatcher-5] [NettyTransport(akka://backend)] failed to bind to /192.168.1.9:2551, shutting down Netty transport 
[ERROR] [04/18/2016 15:54:11.757] [run-main-0] [akka.remote.Remoting] Remoting error: [Startup failed] [ 
akka.remote.RemoteTransportException: Startup failed at  
akka.remote.Remoting.akka$remote$Remoting$$notifyError(Remoting.scala:136) 
     at akka.remote.Remoting.start(Remoting.scala:201) 
     at akka.remote.RemoteActorRefProvider.init(RemoteActorRefProvider.scala:184) 
     at akka.actor.ActorSystemImpl.liftedTree2$1(ActorSystem.scala:663)  
     at akka.actor.ActorSystemImpl._start$lzycompute(ActorSystem.scala:660) 
     at akka.actor.ActorSystemImpl._start(ActorSystem.scala:660) 
     at akka.actor.ActorSystemImpl.start(ActorSystem.scala:676) 
     at akka.actor.ActorSystem$.apply(ActorSystem.scala:143) 
     at akka.actor.ActorSystem$.apply(ActorSystem.scala:120) 
     at com.goticks.BackendRemoteDeployMain$.delayedEndpoint$com$goticks$BackendRemoteDeployMain$1(BackendRemoteDeployMain.scala:9) 
     at com.goticks.BackendRemoteDeployMain$delayedInit$body.apply(BackendRemoteDeployMain.scala:6) 
     at scala.Function0$class.apply$mcV$sp(Function0.scala:34) 
     at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12) 
     at scala.App$$anonfun$main$1.apply(App.scala:76) 
     at scala.App$$anonfun$main$1.apply(App.scala:76) 
     at scala.collection.immutable.List.foreach(List.scala:381) 
     at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35) 
     at scala.App$class.main(App.scala:76) 
     at com.goticks.BackendRemoteDeployMain$.main(BackendRemoteDeployMain.scala:6) 
     at com.goticks.BackendRemoteDeployMain.main(BackendRemoteDeployMain.scala) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at sbt.Run.invokeMain(Run.scala:67) 
     at sbt.Run.run0(Run.scala:61) 
     at sbt.Run.sbt$Run$$execute$1(Run.scala:51) 
     at sbt.Run$$anonfun$run$1.apply$mcV$sp(Run.scala:55) 
     at sbt.Run$$anonfun$run$1.apply(Run.scala:55) 
     at sbt.Run$$anonfun$run$1.apply(Run.scala:55) 
     at sbt.Logger$$anon$4.apply(Logger.scala:85) 
     at sbt.TrapExit$App.run(TrapExit.scala:248) 
     at java.lang.Thread.run(Unknown Source) 
Caused by: org.jboss.netty.channel.ChannelException: Failed to bind to: /192.168.1.9:2551 
     at org.jboss.netty.bootstrap.ServerBootstrap.bind(ServerBootstrap.java:272) 
     at akka.remote.transport.netty.NettyTransport$$anonfun$listen$1.apply(NettyTransport.scala:410) 
     at akka.remote.transport.netty.NettyTransport$$anonfun$listen$1.apply(NettyTransport.scala:406)