想听听人们关于Java集群(即实现HA解决方案)的经验。又名。terracotta、JGroups等。它不一定是网络应用程序。拥有编写自定义独立服务器的经验也很棒。更新:我会更具体一些->对Web应用程序集群不那么感兴趣(除非它可以被拉出并独立运行)。我知道它有效。但我们需要的不仅仅是session集群。从编程的简易性、支持的拓扑结构(即单个数据中心与WAN上的数据中心)、支持的节点数量方面检查解决方案。面临的问题,解决方法。目前我正在Terracotta和JGroups上做一些POC(概念验证)工作,看看它是否值得为我们的应用程序(它是独立的,在Web容器之外)付出努力。
对于我当前的项目,我们决定将我们的应用程序部署到某些Linux机器上的AmazonElasticComputingCloud。我们使用JGroups进行组通信,并且需要一种可靠的发现机制,该机制不需要使用其他集群成员的地址预先配置每个应用程序(这对于TCPPING是必需的,而对于TCPGOSSIP则“有点”是必需的)。由于我们不能使用UDP多播,因此从我们的选项中排除了多播发现。我们研究过使用S3Ping协议(protocol),但在了解到它存在一些可靠性问题后,我们决定推出我们自己的协议(protocol)来完成这一发现。我很想就我们编写的简单协议(protocol)以及它与S3Pi
我正处于infinispan服务器的实验阶段,我在本地机器上设置infinispan集群时遇到问题。配置文件:我通过使用udp堆栈和jdbc_ping发现更改部分jgroup堆栈来更改配置文件cluster.xml。falsejdbc:mysql://localhost/jgroupsrootrootcom.mysql.jdbc.Driver我将mysql驱动程序放在文件夹standalone/deployments中,运行服务器,这是我的输出20:13:15,389INFO[org.jboss.as.server.deployment](MSCservicethread1-8)JBA
Wildfly9集群隔离怎么实现?我们正在开发一个由多个包组成的系统。它们中的每一个都在不同的服务器组中运行,但是它们一起形成了同一个集群(我们正在使用带有TCPPING发现的TCP堆栈-这是我们现在唯一可能的方法)。但是这个配置有严重的问题,长时间的延迟,超时,奇怪的错误。当单独的服务器组被隔离时(例如,当我们关闭其他服务器组时),它似乎对我们有帮助。这也是有道理的-使用TCP,每个数据包都需要发送几次-对于集群中的每个虚拟服务器分别发送。不幸的是,我不知道如何有效地分离特定的服务器组。感谢您的帮助。 最佳答案 我认为这与此处描述
JGroups概念在JGroups中,集群(cluster)是一个由多个节点组成的逻辑实体,节点可以通过一个共享的集群名称来进行连接和通信。这个集群名称可以在配置中指定或在运行时动态创建。JGroups提供了多种方式来创建集群,并使节点能够加入到相同的集群中。下面是一些常见的方式:静态配置:通过配置文件指定集群的名称和成员节点。你可以使用XML或属性文件定义一个静态的集群配置,其中包含集群名称和成员节点的信息。然后,在应用程序中加载该配置文件,节点将根据配置文件中的信息自动加入到指定的集群。动态发现:使用动态发现机制,使节点能够自动发现并加入集群。这通常涉及使用一种外部的发现协议或服务来获取集
下面是我们正在使用的ehcache配置。我们使用Jgroups进行缓存复制。ehcache.xmljgroups_tcp_config.xml最初从日志中我们可以看到节点正在聚集。我们还可以看到消息正在跨节点复制。但一段时间后,我们看到消息不再被复制,因此导致错误行为。我们使用的jgroups配置有问题吗?我们还尝试使用NAKACK2,但消息根本没有跨节点复制。我们只是在上面指定的配置中用NAKACK2替换了NAKACK。不确定我们哪里出错了。 最佳答案 我们在AWS云中面临的上述问题。EhcacheJgroupstcp将无法在云环
我想知道JGroups集群是否使用下一个可用端口,即使port_range设置为0或允许保持默认值。据我所知,根据文档,如果port_range设置为0,则不会探测成员身份要探测的其他端口数。如果没有为port_range和bind_port设置为特定端口,用于JGroupsTCP_PING?谢谢,尼维塔 最佳答案 如果您将bind_port设置为7800,并且TCP中的port_range为0,则端口7800将被占用。如果已经被不同的进程占用,将抛出异常并且节点将不会启动。 关于tcp
我试着仔细研究这3个项目,它们似乎都处理了在尝试集群时出现的略有不同的问题。但是它们的所有文档都是为已经“了解情况”的开发人员编写的,像我这样的新手很难理解。他们每个人试图解决的具体问题是什么,这些问题之间有何不同?使用它们中的每一个进行集群与集群应用服务器(如JBoss或GlassFish的内置集群功能)有何不同?这些框架解决的问题是否不同,足以保证在同一个项目中使用它们?或者他们是相互竞争的,因此对相同/相似的问题有不同的解决方案?提前感谢您对这些奇怪但难以捉摸的框架的任何见解! 最佳答案 jgroups更多是关于任务分配和集群