喜欢知道如何在集群之间分配工作。意味着将请求页A.b、API函数1和2发送到集群1 (jboss应用服务器);函数3和4发送到集群2,等等
主域将相同,子url可以不同。一种方法是让ejb和bean仅在某个杂乱/一组服务器上存活,其他方法是什么?
特别是对在运行时可以更改的方式感兴趣。因此,如果有几个节点出现故障或负载模式发生变化,我们可以重新定义集群。
更详细的是:我们每种语言都有3,000个字符串和120多个用户可以做的广泛操作。机构用户可以(预计为50%)从事大宗业务。另外,我们还有12种语言可以支持。公开一个web和web服务API。
建议我们为特定语言使用服务器集群。这使得每个服务器需要缓存的数据更少,当JVM为特定操作准备时,我们代码可以自我优化它。
英语是默认的语言。我们可以使用初始txn (登录API/第一页用于UI)到一组服务器,其中包含所有英语和其他语言的初始文本(输入翻译的屏幕将有一个属性来表示是否应该将其作为默认集的一部分加载。
我们面临的问题是如何路由请求?我们可以有JMS队列,但是如何路由初始请求呢?
我们计划稍后在应用程序中包含大约70个Jboss服务器实例,以便进行初始发布。如果需要的话,一个节点将能够完成所有的工作(比如另一个崩溃),但在最好的情况下,我们只希望发送几种语言和任务类型的工作。
我们将有一个网页和应用程序层,由防火墙隔开。问题是:代码片段/技术示例将不同的语言和请求类型路由到不同的应用服务器集群。
一些简单的方法是: 1.对于语言,可以看到一些cookie、标题或表单param 2。对于工作类型--除了一个大的if语句--还有什么更好的方法来驱动数据吗?
但是,如何使请求转到特定的集群?仅部署在特定集群中的EJB?仅在特定集群中使用的JMS问题?
在linux上使用Java 7和JBoss7。向特定于Jboss的或特定于linux的或(最好的) J2EE解决方案开放。
发布于 2014-03-20 20:59:41
许多web框架允许采用一种策略,在这种策略中,字符串不是加载在服务器中的内存中,而是作为压缩包发送给客户端。
服务器只发送带有标签键(如user.address.street.name )的标签,这取决于客户端是否将密钥与正确的语言特定字符串匹配。
客户机只需要下载它需要的包。每种语言都可以有几个包,对通常一起使用的字符串进行分组,从而减少下载包的大小,但这可能并不需要。
客户端语言包被提供给客户端,并填充缓存头,这样当客户注销或关闭浏览器并在稍后返回时,包仍然被缓存,不需要重新下载。
例如,采用这种策略的一个框架是GWT和它的客户端语言包。
https://stackoverflow.com/questions/22452137
复制相似问题