java - 除了语言选择(Scala vs Java)之外,Akka 和 Netty 之间还有什么区别?

标签 java scala akka netty

<分区>

想了解一下Akka和Netty的区别。我知道您可以同时使用 Scala 和 Java。我更想知道 Netty 在哪里更好(如果有的话)以及 Akka 在哪​​里更好(如果有的话)。它们在哪里重叠,换句话说,在哪些方面我可以使用 Akka 而不是 Netty,反之亦然。

最佳答案

Akka 是一个围绕参与者和可组合 future 的概念构建的并发框架,Akka 的灵感来自 Erlang,它是围绕 Actor paradigm 从头开始​​构建的。 .它通常用于用更高级别的异步抽象替换阻塞锁,例如同步锁、读写锁等。

Netty 是一个异步网络库,用于使 Java NIO 更易于使用。

请注意,它们都采用异步方法,可以同时使用两者,也可以完全分开使用。

重叠的地方是 Akka 也有一个 IO 抽象,Akka 可以用来创建计算集群,在不同机器上的参与者之间传递消息。从这个角度来看,Akka 是一个更高级别的抽象,可以(并且确实)在引擎盖下使用 Netty。

关于java - 除了语言选择(Scala vs Java)之外,Akka 和 Netty 之间还有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25365556/

相关文章:

java - 为 Factory 类创建的对象注入(inject) Mocks

scala - akka 以哪种方式实时?

scala - Keep组合的含义?

Scala akka-http WebSocket : How to save the client connection and push message to the client when needed?

Java按钮布局右对齐

java - GA 内的哈希

scala - 不那么冗长的 breakOut 的替代方法

datetime - 在 Scala 中处理日期和时间的标准方法是什么?我应该使用 Java 类型还是有原生的 Scala 替代品?

scala - Spark : java. lang.UnsupportedOperationException : No Encoder found for java. time.LocalDate

java - 在Android Studio中运行ExecutorService时出现类异常错误