问题标签 [jgroups]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - EhCache + JGroups 给出“复制队列刷新异常:null”
我正在尝试使用基于 JGroups 的复制配置 EhCache,但是一旦将第一个元素添加到缓存中,我就会收到以下异常的日志:
ehcache.xml 是这样的:
jgroups.xml
是这样的:
使用 jgroups 版本 2.8.1.GA、ehcache-core 版本 2.5.1、ehcache-jgroupsreplication 版本 1.5。
我究竟做错了什么?
更新:当我更改replicateAsynchronously=false
为时,出现以下异常:
更新 2:问题是在 Terracota 的 JIRA 中创建的:https ://jira.terracotta.org/jira/browse/EHC-927
jgroups - JGroup ReplicatedHashMap 是否自动获取其初始状态
我在 JGroup 的 ReplciatedHashMap 中看到了这种行为,我认为这是不正确的。我在一个集群中有两个成员 A 和 B。A 将一些项目放入复制的哈希映射中,B 在其副本中看到相同的项目。现在 A 关闭它的通道并重新打开它并创建哈希映射。此时,我希望 A 的哈希映射包含与 B 中相同的内容,但 A 的哈希映射保持为空。我的期望是哈希映射的内容在整个集群中是一致的。
那么,我做错了什么?我应该在视图更改时设置初始状态吗?我正在使用“udp.xml”作为协议规范并做一些非常基本的事情。任何指针都非常感谢。
java - 在 OSGi 包中反序列化时出现 ClassNotFoundException
在 OSGi 包(称为)中net.beaconcontroller.cluster
,我有一个org.jgroups.blocks.ReplicatedHashMap
. <Long, net.beaconcontroller.cluster.ControllerInfo>
问题是,在调度(即ControllerInfo
远程端的反序列化)期间,JGroups 抱怨ClassNotFoundException
. (附加了堆栈跟踪。)添加
捆绑包的 startUp() 方法的行net.beaconcontroller.cluster
没有任何效果。我可能会错过什么?
java - 需要一个用于远程方法调用的 RpcDispatcher 示例
我正在编写一个将使用 Jgroups 的 Java 应用程序。我已经下载了 JGroups jar,从基本功能的角度来看,一切看起来都不错。我能够创建一个简单的集群,然后通过 JChannel 调用在连接/加入集群的其他 Java 程序中启动多个 Java JVM/节点。但是,我似乎无法让 callRemoteMethods 工作。这是交易。我有一个主 Java 应用程序,我想在一个由 java 命令启动的 JVM 中启动它。然后我想让那个主 Java 应用程序通过 jgroups 启动另一个 JVM,并在第二个 JVM 中启动一个在我的主 Java 应用程序中编码的方法。Jgroup手册中的例子不是很好,不幸的是网上的例子很少。
任何例子将不胜感激。
谢谢,
——贾斯汀
java - Jgroup 示例
有没有显示任何 jgroup 代码示例的网站?jgroups.org 上的教程和手册不是很好,通过谷歌粗略搜索了几次,并没有找到太多。我正在寻找序列化对象并将它们通过通道发送到另一个 JVM 等的示例。
提前致谢,
——贾斯汀·理查德·布莱斯坦
java - 如何强制 JGroups 哪个节点成为协调员?
我正在寻找一种方法来强制 JGroups 使用特定服务器作为协调器,如果该服务器不存在,则选择一个新的协调器,直到指定的那个重新加入集群并接管作为协调器。
在这种情况下,我们通过 Coordinator 将一些信息推送到集群中,监听主题以获取更新,但是获取和处理这些更新可能是资源密集型的,因此我们不希望它向外部世界提供任何服务。因此,在集群前面的负载均衡器中,我们将其设置为不发送到协调器。但是因为 Coordinator 是随机选出的,所以我们基本上需要关闭集群,直到只有单机在里面,然后再启动集群的其余部分。
multithreading - JGroups RPC:NoSuchMethodException
拥有一个由 3 个服务器节点(美属萨摩亚、阿拉斯加、阿拉巴马)和 1 个客户端节点(VoterClient)组成的视图。每当我尝试在以下情况下是美属萨摩亚的视图中调用第一台服务器中的投票方法时,我都会收到 NoSuchMethodException。这是视图中的节点列表,如下图所示:(ping_dest 是美属萨摩亚,pingable_mbrs=[美属萨摩亚,阿拉斯加,阿拉巴马,VoterClient])。所以当我打电话时
address1
的地址在哪里"American Samoa"
,obj.ID
并且obj.candidate
是String
远程投票方法的参数,我得到 NoSuchMethodException。
这是我的日志和例外:
投票方式如下:
这是驱动程序类'(主要方法片段);我如何为每个州初始化服务器。
我认为这与 GMS 选出的协调员有关。当协调者与投票服务器状态相同时,客户端无法投票。下面显示了如何选举美国萨摩亚协调员:
java - JGroups、兵马俑和榛树
试图围绕这 3 个项目展开思考,它们似乎都处理了尝试集群时出现的略有不同的问题。但是他们的所有文档都是为已经“知道”的开发人员编写的,对于像我这样的新手来说很难理解。
- 他们每个人都试图解决的具体问题是什么,这些问题彼此有何不同?
- 它们各自的集群与集群应用服务器(如 JBoss 或 GlassFish 的内置集群功能)有何不同?
- 这些框架解决的问题是否不同,足以保证它们在同一个项目中的使用?或者他们是彼此的竞争对手,因此对相同/相似的问题有不同的解决方案?
提前感谢您对这些奇怪但难以捉摸的框架的任何洞察!
osgi - 如何根据standalone.xml 文件中的配置在JBoss 7.x 中创建JGroups 通道?
我正在为 JBoss7.x 编写一个 OSGI 服务,我需要为一些与域相关的 RPC 创建一个新的 JChannel。我想使用standalone.xml 文件中的协议栈定义之一,如果可以的话,我想使用共享传输。
我不知道从哪里开始访问信息或如何注入它。
查看 JBoss AS 代码,我想我可能需要获取一个 JChannelFactory 实例。我将如何在 OSGI 中执行此操作?
jgroups - 成员不形成集群
我必须在 WAN 上创建一个具有单个接收器和多个发送器的集群。问题是,在每个成员中使用相同的集群名称调用后JChannel.connect()
,没有创建公共视图的公共集群,但每个组件都看到自己的。结果是,当向接收者发送消息时,无法确定后者的物理地址,并且所有消息都被掺杂。
发件人 :
收件人:
jgroups 提供的 tcp.xml 用于 TCPPING 的小改动:
输出:
请你帮助我好吗?也许这个概念是错误的,但由于目标是在 WAN 上工作,我必须使用单播和 TCP。