什么会阻止独立的Coherence服务器启动?

时间:2012-02-24 00:11:38

标签: oracle-coherence

我创建了一个WLS 10.3.6域。我已经启动了节点管理器。我使用WLS控制台定义了一个不属于集群的Coherence服务器。域中没有定义Coherence Clusters。

当我使用WLS控制台启动Coherence服务器时,我会在Coherence服务器的日志中看到如下消息,最终启动时间超时。

2012-02-23 15:21:22.807/32.691 Oracle Coherence GE 3.7.1.1 <Warning> (thread=Cluster, member=n/a): This Member(Id=0, Timestamp=2012-02-23 15:20:52.694, Address=10.229.117.91:8888, MachineId=34821, Location=site:,machine:adc2171238,process:30895,member:Server-0, Role=WeblogicWeblogicCacheServer) has been attempting to join the cluster at address /224.3.7.0:37000 with TTL 4 for 30 seconds without success; this could indicate a mis-configured TTL value, or it may simply be the result of a busy cluster or active failover.
2012-02-23 15:21:22.808/32.692 Oracle Coherence GE 3.7.1.1 <Warning> (thread=Cluster, member=n/a): Received a discovery message that indicates the presence of an existing cluster that does not respond to join requests; this is usually caused by a network layer failure:
Message "SeniorMemberHeartbeat"
  {
  FromMember=Member(Id=1, Timestamp=2012-02-21 02:15:42.655, Address=127.0.0.1:8088, MachineId=60314, Location=site:,machine:localhost,process:23722, Role=WeblogicServer)
  FromMessageId=0
  Internal=false
  MessagePartCount=0
  PendingCount=0
  MessageType=17
  ToPollId=0
  Poll=null
  Packets
    {
    }
  Service=ClusterService{Name=Cluster, State=(SERVICE_STARTED, STATE_ANNOUNCE), Id=0, Version=3.7.1}
  ToMemberSet=null
  NotifySent=false

  LastRecvTimestamp=none
  MemberSet=MemberSet(Size=1, ids=[1])
  }

我应该寻找什么?

2 个答案:

答案 0 :(得分:4)

您可能想尝试使用Coherence JVM(命令)将TTL(生存时间)设置为零,如下所示:

-Dtangosol.coherence.ttl=0

但是来自OP作者@vkraemer,听起来这条线路的单播还需要更多:

-Dtangosol.coherence.ttl=0 -Dtangosol.coherence.localhost=127.0.0.1

将TTL设置为零可确保数据包不会离开原始计算机(在这种情况下是服务器)。否则,程序会尝试连接到远程群集...然后超时,因为没有其他群集输出在网络上。

将localhost设置为127.0.0.1可以有效地设置服务器的单播IP地址。这可能是另一个IP地址,但这里使用的是127.0.0.1,因为它是一个当前未使用的地址(see this article for more information)。 您可能还想阅读loopback

此外,如果需要,请参阅this论坛帖子以获取更多信息(specifically Jonathan.Knight's post。)

答案 1 :(得分:2)

Summea的回答非常接近。这是最终为我工作的:

   -Dtangosol.coherence.ttl=0 -Dtangosol.coherence.localhost=127.0.0.1

我将赞成summea的回答并接受我的回答。如果有人发布了答案,解释说“为什​​么这样做”,我可能会投票并接受他们的回答。