我们正在编写一个用于处理消息的高性能服务器.我们已经使用Jetty好几年了,但Netty看起来有一些很酷的功能.特别是,它支持异步处理,因此线程不必等待系统处理给定的消息.它旨在解决C10k问题.
我知道Jetty在内部对NIO有一些支持.它是否也有异步模型?
消息可能是http格式.在做普通的旧http时,Netty是否比Jetty有任何性能优势?
我想拥有真正的servlet容器的所有便利功能,但不会以降低性能为代价.
我正在选择一个网络库来实现一个不能消耗任何微秒的客户端/服务器系统.它将实现自己的协议来发送和接收消息.我正在寻找一个好的NIO框架,这将允许我轻松开发服务器和客户端,而不必过多担心低级别的选择器细节.每个人都建议我使用Netty,但在向团队提交框架之前,我想尝试2或3个其他选择.我不太喜欢Netty的一件事是它如何使用自己的ByteBuf实现和引用计数来处理ByteBuffers.谁能分享你的想法和选择?
我试图在新的Spring Boot App中使用WebFlux响应类型.我在https://start.spring.io上使用了initializr 并选择了2.0.0-SNAPSHOT版本.我添加了Web反应依赖,我所做的一切都很棒.这是一个非常可靠的POC,目标是如何利用这些类型来实现API的现代化,为此,我们计划慢慢替换阻塞和/或同步过程的每个部分,并用非阻塞的替代实现替换它.
我遇到的问题是,当我试图将我的POC演变成更类似于我们在生产中的服务时,很多东西似乎都没有起作用.现在我明白webflux还不是GA,而且我不应该期待所有其他春季项目的完全反应支持.但我记得当webflux仍被称为web-reactive,你可以在underow/jetty/netty/tomcat/etc上运行但是现在我正在使用webflux启动器,一切都默认为netty,我没有看到文档调用如何将其更改为我们其他服务当前使用的嵌入式tomcat.
是否仍然可以将spring-boot-starter-webflux与其他应用程序容器一起使用,或者我现在是否需要手动引导webflux以使用除netty之外的其他东西?