jbosscache 集群配置问题

niuxinlong 2010-01-26 05:11:16
运行环境:weblogic 10.3 jbosscache版本是2.2.1
配置文件内容如下:


<?xml version="1.0" encoding="UTF-8"?>

<!-- ===================================================================== -->
<!-- -->
<!-- Sample TreeCache Service Configuration -->
<!-- -->
<!-- ===================================================================== -->

<server>
<classpath codebase="./jboss-lib" archives="jbosscache-core.jar, jgroups.jar"/>

<!-- ==================================================================== -->
<!-- Defines TreeCache configuration -->
<!-- ==================================================================== -->

<mbean code="org.jboss.cache.TreeCache"
name="jboss.cache:service=TreeCache">

<depends>jboss:service=Naming</depends>
<depends>jboss:service=TransactionManager</depends>

<!--
Configure the TransactionManager
-->
<attribute name="TransactionManagerLookupClass">org.jboss.cache.transaction.DummyTransactionManagerLookup</attribute>

<!--
Isolation level : SERIALIZABLE
REPEATABLE_READ (default)
READ_COMMITTED
READ_UNCOMMITTED
NONE
-->
<attribute name="IsolationLevel">REPEATABLE_READ</attribute>

<!--
Valid modes are LOCAL
REPL_ASYNC
REPL_SYNC
INVALIDATION_ASYNC
INVALIDATION_SYNC
-->
<attribute name="CacheMode">REPL_SYNC</attribute>

<!--
Just used for async repl: use a replication queue
-->
<attribute name="UseReplQueue">false</attribute>

<!--
Replication interval for replication queue (in ms)
-->
<attribute name="ReplQueueInterval">0</attribute>

<!--
Max number of elements which trigger replication
-->
<attribute name="ReplQueueMaxElements">0</attribute>

<!-- Name of cluster. Needs to be the same for all clusters, in order
to find each other
-->
<attribute name="ClusterName">TreeCache-Cluster</attribute>

<!-- JGroups protocol stack properties. Can also be a URL,
e.g. file:/home/bela/default.xml
<attribute name="ClusterProperties"></attribute>
-->

<attribute name="ClusterConfig">
<config>
<!-- UDP: if you have a multihomed machine,
set the bind_addr attribute to the appropriate NIC IP address, e.g bind_addr="192.168.0.2"
-->
<!-- UDP: On Windows machines, because of the media sense feature
being broken with multicast (even after disabling media sense)
set the loopback attribute to true -->
<UDP mcast_addr="ff02::1:2:5" mcast_port="48866"
ip_ttl="8" ip_mcast="true"
mcast_send_buf_size="800000" mcast_recv_buf_size="800000"
ucast_send_buf_size="800000" ucast_recv_buf_size="800000"
loopback="false"/>
<!-- <FD shun="true" up_thread="true" down_thread="true" />-->
<FD_SOCK/>
</config>

</attribute>


<!--
Whether or not to fetch state on joining a cluster
NOTE this used to be called FetchStateOnStartup and has been renamed to be more descriptive.
-->
<attribute name="FetchInMemoryState">true</attribute>

<!--
The max amount of time (in milliseconds) we wait until the
initial state (ie. the contents of the cache) are retrieved from
existing members in a clustered environment
-->
<attribute name="InitialStateRetrievalTimeout">15000</attribute>

<!--
Number of milliseconds to wait until all responses for a
synchronous call have been received.
-->
<attribute name="SyncReplTimeout">15000</attribute>

<!-- Max number of milliseconds to wait for a lock acquisition -->
<attribute name="LockAcquisitionTimeout">10000</attribute>

<!-- Name of the eviction policy class. -->
<attribute name="EvictionPolicyClass"></attribute>

<!--
Indicate whether to use marshalling or not. Set this to true if you are running under a scoped
class loader, e.g., inside an application server. Default is "false".
-->
<attribute name="UseMarshalling">false</attribute>

<attribute name="StateTransferVersion">130</attribute>

<!--attribute name="CacheLoaderConfiguration">
<config>
<passivation>false</passivation>
<preload>/</preload>
<shared>false</shared>

<cacheloader>
<class>org.jboss.cache.loader.ClusteredCacheLoader</class>
<properties>
timeout=1000
</properties>
<async>false</async>
<fetchPersistentState>false</fetchPersistentState>
<ignoreModifications>false</ignoreModifications>
</cacheloader>
</config>
</attribute-->
</mbean>
</server>

集群中,单个服务器cache都能正常使用,但是集群中的服务器之间数据不能同步,请高手指教!
...全文
346 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
悠云guo 2010-02-24
  • 打赏
  • 举报
回复
1.最好在JGroups的配置文件指定一下采用哪张网卡
tcp.xml

<TCP bind_port="7800"
bind_addr="192.168.10.121"
bind_interface="wlan0"
...
</TCP>

2.明确采用IPv4还是IPv6。建议采用IPv4,用启动参数指定一下"-Djava.net.preferIPv4Stack=true"。WebLogic没设置过,WebSphere可以在JVM参数中设置。
niuxinlong 2010-01-26
  • 打赏
  • 举报
回复
Jan 26, 2010 4:36:23 PM org.jboss.cache.transaction.DummyTransactionManager getInstance
SEVERE: binding of DummyTransactionManager failed
javax.naming.OperationNotSupportedException: bind not allowed in a ReadOnlyContext; remaining name '/TransactionManager'
at weblogic.jndi.factories.java.ReadOnlyContextWrapper.newOperationNotSupportedException(ReadOnlyContextWrapper.java:145)
at weblogic.jndi.factories.java.ReadOnlyContextWrapper.newOperationNotSupportedException(ReadOnlyContextWrapper.java:161)
at weblogic.jndi.factories.java.ReadOnlyContextWrapper.bind(ReadOnlyContextWrapper.java:57)
at weblogic.jndi.internal.AbstractURLContext.bind(AbstractURLContext.java:45)
at javax.naming.InitialContext.bind(InitialContext.java:400)
at org.jboss.cache.transaction.DummyTransactionManager.getInstance(DummyTransactionManager.java:40)
at org.jboss.cache.transaction.DummyTransactionManagerLookup.getTransactionManager(DummyTransactionManagerLookup.java:17)
at org.jboss.cache.factories.TransactionManagerFactory.construct(TransactionManagerFactory.java:48)
at org.jboss.cache.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:284)
at org.jboss.cache.factories.ComponentRegistry.invokeInjectionMethod(ComponentRegistry.java:245)
at org.jboss.cache.factories.ComponentRegistry$Component.injectDependencies(ComponentRegistry.java:911)
at org.jboss.cache.factories.ComponentRegistry.registerComponent(ComponentRegistry.java:221)
at org.jboss.cache.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:291)
at org.jboss.cache.factories.ComponentRegistry.invokeInjectionMethod(ComponentRegistry.java:245)
at org.jboss.cache.factories.ComponentRegistry$Component.injectDependencies(ComponentRegistry.java:911)
at org.jboss.cache.factories.ComponentRegistry.registerComponent(ComponentRegistry.java:221)
at org.jboss.cache.factories.InterceptorChainFactory.createInterceptor(InterceptorChainFactory.java:41)
at org.jboss.cache.factories.InterceptorChainFactory.buildInterceptorChain(InterceptorChainFactory.java:56)
at org.jboss.cache.factories.InterceptorChainFactory.construct(InterceptorChainFactory.java:132)
at org.jboss.cache.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:284)
at org.jboss.cache.factories.ComponentRegistry.invokeInjectionMethod(ComponentRegistry.java:245)
at org.jboss.cache.factories.ComponentRegistry$Component.injectDependencies(ComponentRegistry.java:911)
at org.jboss.cache.factories.ComponentRegistry.registerComponent(ComponentRegistry.java:221)
at org.jboss.cache.DefaultCacheFactory.bootstrap(DefaultCacheFactory.java:129)
at org.jboss.cache.DefaultCacheFactory.createAndWire(DefaultCacheFactory.java:115)
at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:94)
at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:79)
at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:146)
at org.jasig.cas.util.JBossCacheFactoryBean.afterPropertiesSet(JBossCacheFactoryBean.java:49)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:423)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at org.jasig.cas.web.init.SafeContextLoaderListener.contextInitialized(SafeContextLoaderListener.java:62)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:465)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:175)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1785)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3005)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1371)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:468)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:635)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:16)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:162)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184)
at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361)
at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:196)
at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Jan 26, 2010 4:36:24 PM org.jgroups.JChannel init
INFO: JGroups version: 2.6.5.GA
Jan 26, 2010 4:36:24 PM org.jgroups.util.Util createMulticastSocket
WARNING: could not bind to /ff02:0:0:0:0:1:2:5 (IPv6 address); make sure your mcast_addr is of the same type as the IP stack (IPv4 or IPv6).
Will ignore mcast_addr, but this may lead to cross talking (see http://www.jboss.com/wiki/Edit.jsp?page=CrossTalking for details).
Exception was: java.net.SocketException: Invalid argument
Jan 26, 2010 4:36:24 PM org.jgroups.protocols.TP$DiagnosticsHandler bindToInterfaces
WARNING: failed to join /224.0.75.75:7500 on eth0: java.net.SocketException: No such device
Jan 26, 2010 4:36:24 PM org.jgroups.protocols.TP$DiagnosticsHandler bindToInterfaces
WARNING: failed to join /224.0.75.75:7500 on eth1: java.net.SocketException: No such device
Jan 26, 2010 4:36:24 PM org.jboss.cache.RPCManagerImpl start
INFO: Cache local address is 10.212.194.29:1282


启动服务中出现的错误及警告信息!唉,谢谢各位大侠了!

6,787

社区成员

发帖
与我相关
我的任务
社区描述
JBoss技术交流
社区管理员
  • JBoss技术交流社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧