NIO和JMS有什么区别

时间:2011-02-19 14:39:45

标签: java jms nio

据我所知,Java NIO是一个帮助创建事件驱动应用程序的API。使用选择器通知您的应用程序通过SocketChannel接收的任何数据。 JMS(Java Messaging Service)是一种用于在客户端之间发送/接收消息的消息传递框架。

JMS是Java NIO API的抽象吗?

1 个答案:

答案 0 :(得分:8)

NIO只代表新IO。它是一个增强的通用Java IO包,它对异步IO有很多支持,但也包含很多其他增强功能,例如支持通过文件名进行grepping。当您尝试执行java.io中的类不支持的操作时,您将使用它。

JMS是一个Java消息传递系统。当您需要让两个应用程序通过类似队列的系统相互通信时,可以使用它。它是否在底层使用NIO是一个实现细节,尽管用Java编写的各种JMS提供程序可能会这样做。