0

我必须计划这个大型客户端-服务器应用程序,通过 EJB(2.1) 进行通信。

- 为这数千个(可能是数万个客户端提供服务的服务器位于一个中心位置,并且有 2 个工作线程。

-EJB 基本上会提供数以百计的不那么大的 DTO的列表(最多 10 个原始数据/字符串字段)。

- 用户的ID 很重要(数据库查询确实考虑了用户的 ID)

我想知道在这样的环境中使用(即使是乍一看)最好的 bean 类型,即Stateless-Session、Stateful-Session、Entity 或 Message-Driven

我正在考虑可能使用无状态会话 bean 的缓存,似乎更少的对象创建 - 销毁和服务器资源,但我不是专家。

如果有人对此有任何专业知识,我将不胜感激。

Thx,你们统治

4

3 回答 3

1

我真的看不到有 2 个线程为数万个客户端提供服务的服务器的方法......ejb 或没有 ejb :)

于 2012-01-11T09:16:41.647 回答
1

我相信您首先应该更好地理解 EJB 类型和 EJB 的容器/池机制。要运行您的 ejb,您需要一个适当的 j2ee 容器来管理它自己的 bean 池(可配置),并且您没有指定应该调用多少线程。

具体的 EJB 选择取决于您希望如何提供数据(同步或异步。- 无状态 ejb 或 mdbs)。客户端-服务器交互是否应该包括会话状态 - 有状态的 ejb。

如果它是一个新项目并且您正在从头开始设计它,为什么 ejb 2.1 而不是 3.0+,对于数据库端考虑使用 NoSql 解决方案。

于 2012-01-11T09:23:21.987 回答
1

无状态会话 Bean,但不要仅使用两个线程来限制您自己。对于您预测的高容量,您需要进一步了解 App Server 架构,并决定集群等事项。HTH

于 2012-01-11T21:39:56.460 回答