0

我目前正在寻找 akka.net(.NET 版本)的可视化工具。我没有找到,所以我想知道是否有任何方法可以使 akka-tree(规模)和 akka.net 集群一起工作。我想如果两个框架都遵循相同的规范,那么它应该可以工作。是吗?

我尝试在 akka-tree 中问这个问题,但没有回应,所以我在这里试试运气。

https://github.com/nraychaudhuri/akka-tree/issues/15

我不熟悉规模,但我做了以下更改。

我尝试在我的 akka.net 示例中添加 UDP 配置,因为我认为这个可视化工具正在使用 UDP。

        helios.udp {
              port = 9003 # needs to be on a different port or IP than TCP
              hostname = localhost
          }

然后,我尝试更改此文件 akka-tree\visualizer\app\controllers\Application.scala 中的 IP 地址

            val group = InetAddress.getByName("127.0.0.1"); 

但是,不起作用..知道如何使它起作用吗?谢谢!

更新:

我尝试使用 TCP 但不起作用。

当我访问网页“localhost:90000”时出现以下异常。我对Scale不熟悉,但我认为它与Scale安装有关。我确实在我的机器上安装了 scale 和 java..

[信息] 将 1 个 Scala 源代码编译到 D:\git\akka-tree\visualizer\target\scala-2.11 \classes... [信息] 播放 - 应用程序已启动 (Dev) [错误] 应用程序 -

!内部服务器错误,用于 (GET) [/] ->

java.lang.ExceptionInInitializerError: null at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.appl y(routes_routing.scala:72) ~[na:na] at Routes$$anonfun$routes $1$$anonfun$applyOrElse$1$$anonfun$apply$1.appl y(routes_routing.scala:72) ~[na:na] at play.core.Router$HandlerInvokerFactory$$anon$13$$anon$14.call(Router. scala:217) ~[play_2.11-2.3.7.jar:2.3.7] 在 play.core.Router$Routes$TaggingInvoker.call(Router.scala:464) ~[play_2.11-2.3.7.jar: 2.3.7] 在 Routes$$anonfun$routes$1$$anonfun$applyOrElse$1.apply(routes_routing.scala:72) ~[na:na] 引起:java.net.SocketException:不是 java.net 的多播地址.MulticastSocket.joinGroup(Unknown Source) ~[na:1.8.0_51] at controllers.Application$.(Application.scala:16) ~[na:na] at controllers.Application$.(Application.scala) ~[na:na] at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.appl y(routes_routing.scala:72) ~[na:na]在 Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.appl y(routes_routing.scala:72) ~[na:na] [error] application - 渲染默认错误页面时出错 scala.MatchError : java.lang.ExceptionInInitializerError (of class java.lang.Exce ptionInInitializerError) at play.api.GlobalSettings$class.onError(GlobalSettings.scala:148) ~[play y_2.11-2.3.7.jar:2.3.7]在 play.api.DefaultGlobal$.onError(GlobalSettings.scala:206) [play_2.11- 2.3.7.jar:2.3.7] 在 play.core.server.Server$class.logExceptionAndGetResult$1(Server.scala:63 ) [play_2.11-2.3.7.jar:2.3.7] 在 play.core.server.Server$$anonfun$getHandlerFor$4。apply(Server.scala:7 3) [play_2.11-2.3.7.jar:2.3.7] 在 play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:7 1) [play_2 .11-2.3.7.jar:2.3.7] [错误] 应用程序 -

!内部服务器错误,对于 (HEAD) [/] ->

java.lang.NoClassDefFoundError: 无法在 Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.appl y(routes_routing.scala:72) ~[na:na 处初始化类控制器。 ] at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.appl y(routes_routing.scala:72) ~[na:na] at play.core.Router$HandlerInvokerFactory$$anon$13$ $anon$14.call(Router.scala:217) ~[play_2.11-2.3.7.jar:2.3.7] at play.core.Router$Routes$TaggingInvoker.call(Router.scala:464) ~[play_ 2.11-2.3.7.jar:2.3.7] 在 Routes$$anonfun$routes$1$$anonfun$applyOrElse$1.apply(routes_routing.scala:72) ~[na:na] [error] 应用程序 - 呈现默认时出错错误页面 scala.MatchError: java.lang.NoClassDefFoundError: 无法初始化类控制器.Application$(类 java.lang.NoClassDefFoundError) at play.api.GlobalSettings$class.onError(GlobalSettings.scala:148) ~[play y_2.11-2.3.7.jar:2.3.7] at play.api.DefaultGlobal$.onError(GlobalSettings.scala: 206) [play_2.11- 2.3.7.jar:2.3.7] 在 play.core.server.Server$class.logExceptionAndGetResult$1(Server.scala:63) [play_2.11-2.3.7.jar:2.3. 7] 在 play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:7 3) [play_2.11-2.3.7.jar:2.3.7] 在 play.core.server.Server$ $anonfun$getHandlerFor$4.apply(Server.scala:7 1) [play_2.11-2.3.7.jar:2.3.7]logExceptionAndGetResult$1(Server.scala:63) [play_2.11-2.3.7.jar:2.3.7] at play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:7 3) [play_2 .11-2.3.7.jar:2.3.7] 在 play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:7 1) [play_2.11-2.3.7.jar:2.3. 7]logExceptionAndGetResult$1(Server.scala:63) [play_2.11-2.3.7.jar:2.3.7] at play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:7 3) [play_2 .11-2.3.7.jar:2.3.7] 在 play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:7 1) [play_2.11-2.3.7.jar:2.3. 7]

4

2 回答 2

2

我不是作者,但在 nuget https://www.nuget.org/profiles/corneliutusnea上有一个移植到 .NET 的“非常非常 alpha 版本”(从 16 年 8 月开始) ,源代码在这里https:/ /github.com/corneliutusnea/Akka.Visualizer

于 2017-01-04T20:46:26.503 回答
1

问题是,您试图通过 .NET 和 JVM akka 实现来跨越集群。目前,它们彼此不兼容。原因是 .NET/JVM 套接字传输层的一些差异(如小端和大端字节顺序)以及消息序列化问题(JVM 使用内置 JavaSerializer,.NET 默认使用 JSON.NET)。

可能还有其他一些小问题,但结论是,目前您无法在 .NET 和 JVM 节点之间组合 akka 集群。

于 2015-08-31T13:48:30.080 回答