0

我有客户端服务器应用程序,带有 JBossAS7 和使用服务器提供的远程 EJB 的客户端。我必须将文件从客户端传递到服务器,然后通过 InputStream 对其进行进一步处理。还必须将文件从服务器传递到客户端,在服务器上我得到 OutputStream。文件大小没有限制,甚至可能是 5GB。我该怎么做才能解决这种情况?传递 byte[] 数组似乎不是一个好的解决方案,RMI 限制了我读过的大小。RMIIO 是 GPL(我需要免费用于商业用途的解决方案)。http传输是唯一合理的方法吗?

编辑:似乎 RMIIO 总是 LGPL!

4

2 回答 2

6

您可以考虑设置一个运行在 JBoss AS 上的 Netty 服务器,如本Netty 教程中所示,并使用裸套接字传递数据。
另一种选择是通过使用 Servlet 的简单 HTTP 传输来实现 HTTP。
我会排除 EJB,因为它们是事务组件,并承认您设法通过 RMI-IIOP 传递了这些数据,但您仍然必须设置一个巨大的事务超时。
希望能帮助到你。

于 2012-09-05T12:36:16.760 回答
1

RMIIO 是LGPL(与 GPL 不同),它可以免费用于商业用途并且不是病毒式的(假设您没有修改 rmiio 库)。

于 2013-08-09T14:27:00.493 回答