私はこの例に従ってリモートアクターをルーティングしようとしています:
http://doc.akka.io/docs/akka/snapshot/scala/routing.html#Remotely_Deploying_Routees
コードは次のとおりです。
val system = ActorSystem("RemoteSystem", ConfigFactory.load.getConfig("remotecreation"))
val addresses = Seq(AddressFromURIString("akka://ActorApplication@172.17.100.224:2552"),
AddressFromURIString("akka://ActorApplication@172.17.100.232:2552"))
val worker = system.actorOf(Props[authNetActor.AuthNetActorMain].withRouter(RemoteRouterConfig(RoundRobinRouter(5), addresses)))
ただし、サーバーのIPアドレスの1つが認証されていないというエラーが表示されます。
これがエラーです(これは172.17.100.224:2552からです):
[ERROR] [09/20/2012 18:13:02.192] [ActorApplication-akka.actor.default-dispatcher-11 [akka://ActorApplication/remote/RemoteSystem@172.17.100.231:2554/user/$a/c1] peer not authenticated
javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
at sun.security.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:371)
at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:128)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:390)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:148)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:149)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:121)
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:562)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:415)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:776)
at dispatch.BlockingHttp$class.dispatch$BlockingHttp$$execute(Http.scala:45)
at dispatch.BlockingHttp$$anonfun$execute$1$$anonfun$apply$3.apply(Http.scala:58)
at dispatch.BlockingHttp$$anonfun$execute$1$$anonfun$apply$3.apply(Http.scala:58)
at scala.Option.getOrElse(Option.scala:108)
at dispatch.BlockingHttp$$anonfun$execute$1.apply(Http.scala:58)
at dispatch.Http.pack(Http.scala:25)
at dispatch.BlockingHttp$class.execute(Http.scala:53)
at dispatch.Http.execute(Http.scala:21)
at dispatch.HttpExecutor$class.x(executor.scala:36)
at dispatch.Http.x(Http.scala:21)
at dispatch.HttpExecutor$class.when(executor.scala:50)
at dispatch.Http.when(Http.scala:21)
at dispatch.HttpExecutor$class.apply(executor.scala:60)
at dispatch.Http.apply(Http.scala:21)
at models.AuthorizeNet$.AuthorizeNetDPM(main.scala:187)
at authNetActor.AuthNetActorMain$$anonfun$receive$1.apply(AuthNetActor.scala:68)
at authNetActor.AuthNetActorMain$$anonfun$receive$1.apply(AuthNetActor.scala:12)
at akka.actor.Actor$class.apply(Actor.scala:318)
at authNetActor.AuthNetActorMain.apply(AuthNetActor.scala:9)
at akka.actor.ActorCell.invoke(ActorCell.scala:626)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197)
at akka.dispatch.Mailbox.run(Mailbox.scala:179)
at akka.dispatch.ForkJoinExecutorConfigurator$MailboxExecutionTask.exec(AbstractDispatcher.scala:516)
at akka.jsr166y.ForkJoinTask.doExec(ForkJoinTask.java:259)
at akka.jsr166y.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:975)
at akka.jsr166y.ForkJoinPool.runWorker(ForkJoinPool.java:1479)
at akka.jsr166y.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:104)
エラーはこのサーバーでのみ発生します。両者の違いは、コードパスが異なり、独自のローカルIPアドレスでアクターシステムを作成することです。それ以外の点では、これら2つのアクターシステムのコードは同じです。
このエラーを修正する方法や、1台のサーバーでエラーがスローされる理由が正確にはわかりません。
どんな助けでもありがたいです、ありがとう。