使用NIO框架的Java程序

我正在做一些与Java NIO有关的研究。 我需要找到一些基于此框架的代表性应用程序。 请随时提出建议! 越多越好!

谢谢

Apache MINA Networking框架基于NIO构建(许多应用程序都使用它来提供高性能网络)。

Apache MINA是一个网络应用程序框架,可帮助用户轻松开发高性能和高可扩展性的网络应用程序。 它通过Java NIO在各种传输(如TCP / IP和UDP / IP)上提供抽象的,事件驱动的异步API。

Apache MINA经常被称为:

  • NIO框架·库,
  • 客户端·服务器框架·库,或
  • 网络·套接字库。

然而,它远不止于此。 请查看支持快速网络应用程序开发的function列表,以及人们对MINA的看法。 请自行下载,尝试我们的快速入门指南,浏览我们的常见问题解答或开始加入我们的社区

我相信JETTY使用continuation来支持使用Servlet 3.0延续的5000+ HTTP Comet连接 。

您还可以查看BlazeDS NIO实现(基本上是一个开源LCDS)。 http://blogs.webtide.com/athena/entry/asynchronous_blazeds_polling_with_jetty

Netty :

Netty是一个NIO客户端服务器框架,可以快速轻松地开发协议服务器和客户端等网络应用程序。 它极大地简化并简化了TCP和UDP套接字服务器等网络编程。

Grizzly是一个HTTP连接器,它使用NIO。 它已在Sun Glassfish Java EE应用程序服务器中使用,也可在Apache Tomcat Java servletcontainer中使用。 它不仅能够实现Comet (一种HTTP推送的想法),而且它还可以扩展,它可以在单个线程上达到〜20.000个并发HTTP连接,而不是那么multithreading上的~5,000个并发HTTP连接。

Rabbit Web代理正在使用NIO。

但在跳上NIO的潮流之前,我建议你阅读这篇文章 。

我相信Adobe LCDS可以运行Java NIO。

我在SourceForge上创建了一个名为JInSim的开源项目,它使用了nio。 我不再是活跃的开发者了,但我确信这部分仍然是一样的。 这是一个较小规模的图书馆,允许人们为赛车模拟器Live For Speed编写客户。

JInSim链接

流行的Web应用程序服务器Jetty可以使用NIO。 检查不同的sockets连接器。 Jetty还可以使用continuation来处理异步Web请求。

Project Voldemort是一个分布式键/值存储,也可以配置为使用NIO进行套接字连接,并使用库的一部分从其只读数据存储中读取。