|
作者是 Craig Wickesser
|
|
2008-05-04 07:11:15 |
|
Gregor Roth最近发布了xSocket 2.0,这是一个基于NIO的用来构建高性能、可扩展网络应用的Java库。InfoQ有机会采访了Gregor,并了解到xSocket的历史、最新发布、及今后的计划。
InfoQ:xSocket的发展历史是怎样的?
Gregor Roth:xSocket的最初版本是一个高性能SMTP服务器评测项目的副产品。通用的、NIO相关的网络代码被重新实现了一下,成为了xSocket。2006年7月发布了 xSocket的第一个公开版本(V0.8)。在xSocket 1.0中,API已被完全重新设计。xSocket随后的一些的版本(V1.1和1.2)通过添加新的方法、类、功能增强了API。
InfoQ:2.0中主要的新功能或修复的缺陷是什么? GR:除了一些细微的变化、重命名、及移除废置的工件之外,xSocket V2.0主要的API与xSocket V1.2的API是一致的。最重要的变化是新扩展的模块和重新实现的内部组件。
xSocket V2.0主要的发布说明有:
- [API]通过移除废置的工件和细微的变化整理了API。
- [API]新的执行注释支持。基于新的执行注释,用户能清楚地规定其网络处理器中的回调函数应该以单线程的模式执行还是多线程的模式执行。
- [部署]xSocket二进制包现在符合OSGi。
- [监控]改进的JMX-Monitoring。
- [性能]重新实现了xSocket的底层代码,以此获得显著的性能提升。
- [SSL]重新实现的SSL支持。
- [资源]通过自动分离、重新连接Socket的SelectionKey到Selector来提升挂起和恢复读支持,这能减少所需的资源。
新扩展的模块有(预览版):
- xSocket-multiplexed,支持一个物理TCP连接之上运行的多个逻辑连接。
- xSocket-http,支持编写同步、异步的HTTP客户端和服务器组件。xSocket–http包括一个HttpClient,而且通过提供异步的、流技术的API,有利于编写像HTTP代理、COMET服务器应用程序一样的基于事件的HTTP网络组件。
InfoQ:xSocket今后的计划是什么?
GR:Socket 2.x:
- 更进一步的的性能优化(改进的NIO级文件流支持,……)
- [xSocket-http]改良的COMET支持(支持Bayeux协议,……)
xSocket的下一个主版本(V3.0)将使用NIO.2的特性(NIO.2将会成为JSE 1.7的一部分)。
InfoQ: 是否打算与JBoss、Glassfish等进行集成?就像Grizzly已经做的那些?
GR:目前还没有具体的集成计划。
如果你有任何关于xSocket的问题,或是想向Gregor反馈信息,你可以通过邮件gregor.roth[at]googlemail.com联系他。你也可以找到更多的使用xSocket进行异步HTTP和Comet架构的信息。
查看英文原文:xSocket Aims to Keep NIO Simple
|
|
最近更新 ( 2008-05-04 07:11:15 )
|