coherence配置说明
经过上篇 coherence初识 ,最近算是和coherence杠上了,针对coherence3.5.3这个版本,把学到的东西整理下
1. 这个jar包有点大,4M多,首先打开coherence.jar,可以发现里面有许多的配置xml文件,就从这些xml说起
- tangosol-coherence.xml---提供了operational 和run-time设置,用来创建和配置cluster,通讯和数据管理服务。这个文件通常被称为operational deployment descriptor。
<coherence xml-override="{tangosol.coherence.override /tangosol-coherence-override-{mode}.xml}">
。。。。
</coherence>
- tangosol-coherence-override-dev.xml---当Coherence启动在dev模式时,这个文件覆盖了tangosol-coherence.xml文件的operational 设置。Coherence启动默认是dev 模式,这个文件中的设置会被使用。
<coherence xml-override="/tangosol-coherence-override.xml">
。。。。
</coherence> - tangosol-coherence-override-eval.xml---当Coherence启动在eval模式时,这个文件覆盖了在tangosol-coherence.xml文件的operational 设置。
<coherence xml-override="/tangosol-coherence-override.xml">
。。。。
</coherence> - tangosol-coherence-override-prod.xml---当Coherence启动在prod模式时,这个文件覆盖了在tangosol-coherence.xml文件的operational 设置。
<coherence xml-override="/tangosol-coherence-override.xml">
。。。。
</coherence>
默认,使用tangosol-coherence-override.xml这个文件覆盖jar包中的配置,我们可以在自己的项目中加一个tangosol-coherence-override.xml,然后将它加入到classpath中,也可以设置tangosol.coherence.override系统参数指定xml文件,使用coherence不可避免要用集群,以上就是集群的相关配置文件
- coherence-cache-config.xml---定义在cluster中使用的缓存名称、策略等,我们可以在classpath中添加coherence-cache-config.xml,或者在tangosol-coherence-override.xml中配置
<configurable-cache-factory-config>
<class-name>com.tangosol.net.DefaultConfigurableCacheFactory</class-name>
<init-params>
<init-param>
<param-type>java.lang.String</param-type>
<param-value system-property="tangosol.coherence.cacheconfig">coherence-cache-my.xml</param-value>
</init-param>
</init-params>
</configurable-cache-factory-config>或者,设置tangosol.coherence.cacheconfig系统参数指定配置
- coherence-pof-config.xml---我们可以在classpath中添加coherence-pof-config.xml,或者设置tangosol.pof.config系统参数指定配置
- Management configuration files 一个用来配置coherence management reports的文件集合。这些文件在coherence.jar库的/reports目录里。文件包含了一组配置文件的报 告(report-group.xml。默认的),参考了许多的报告定义文件。 每个报告定义文件的结果是创建一个报告文件,该文件显示管理信息基于特定的一组度量。
2. 配置集群
在tangosol-coherence-override.xml中简单配置集群名称,成员名称,组播/单播地址,缓存配置等:
<coherence>
<cluster-config>
<member-identity>
<cluster-name system-property="tangosol.coherence.cluster">ProductClusterV3</cluster-name> <!--集群名称-->
<member-name system-property="tangosol.coherence.member">ctas-node</member-name> <!--成员节点名称-->
</member-identity>
<!--单播-->
<unicast-listener>
<well-known-addresses>
<socket-address id="1">
<address system-property="tangosol.coherence.wka">10.6.53.83</address>
<port system-property="tangosol.coherence.wka.port">23401</port>
</socket-address>
<socket-address id="2">
<address system-property="tangosol.coherence.wka">10.6.53.83</address>
<port system-property="tangosol.coherence.wka.port">23403</port>
</socket-address>
<socket-address id="3">
<address system-property="tangosol.coherence.wka">10.6.53.84</address>
<port system-property="tangosol.coherence.wka.port">23401</port>
</socket-address>
<socket-address id="4">
<address system-property="tangosol.coherence.wka">10.6.53.84</address>
<port system-property="tangosol.coherence.wka.port">23403</port>
</socket-address>
</well-known-addresses> <!--<address system-property="tangosol.coherence.localhost">localhost</address>
<port system-property="tangosol.coherence.localport">33414</port> -->
</unicast-listener>
<!--组播-->
<multicast-listener>
<address system-property="tangosol.coherence.clusteraddress">224.3.3.1</address>
<port system-property="tangosol.coherence.clusterport">35301</port>
<time-to-live system-property="tangosol.coherence.ttl">4</time-to-live>
<join-timeout-milliseconds>10000</join-timeout-milliseconds>
</multicast-listener>
</cluster-config>
<configurable-cache-factory-config>
<class-name>com.tangosol.net.DefaultConfigurableCacheFactory</class-name>
<init-params>
<init-param>
<param-type>java.lang.String</param-type>
<param-value system-property="tangosol.coherence.cacheconfig">coherence-cache-config.xml</param-value> <!--缓存配置-->
</init-param>
</init-params>
</configurable-cache-factory-config>
</coherence>
单播要比组播的优先级高,一个集群应该保证名称,组播ip和端口一样,成员节点名称(member-name)可以一样,因为要确定一个节点还有好多其他信息(site-name、machine-name、process-name、role-name等)会默认设置的
实践证明:要想使用自定义配置文件,配置文件的classpath要优先于jar包,否则不会生效,千万注意
coherence配置说明的更多相关文章
- NHibernate之映射文件配置说明
NHibernate之映射文件配置说明 1. hibernate-mapping 这个元素包括以下可选的属性.schema属性,指明了这个映射所引用的表所在的schema名称.假若指定了这个属性, 表 ...
- WCF服务器证书配置说明-没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限
WCF服务器证书配置说明 1.创建证书: makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=XXX -sky exchange -pe 说明: -s ...
- Hardware Solutions CACHE COHERENCE AND THE MESI PROTOCOL
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION Hardware-based soluti ...
- Software Solutions CACHE COHERENCE AND THE MESI PROTOCOL
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION Software cache cohere ...
- CACHE COHERENCE AND THE MESI PROTOCOL
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION In contemporary multi ...
- log4net一些配置说明
<configuration> <configSections> <section name="log4net" type="System. ...
- maven -- 学习笔记(二)之setting.xml配置说明(备忘)
setting.xml配置说明,learn from:http://pengqb.javaeye.com,http://blog.csdn.net/mypop/article/details/6146 ...
- Atitit.mybatis的测试 以及spring与mybatis在本项目中的集成配置说明
Atitit.mybatis的测试 以及spring与mybatis在本项目中的集成配置说明 1.1. Mybatis invoke1 1.2. Spring的数据源配置2 1.3. Mybatis ...
- Oracle Coherence应用部署到Jboss EAP 6.x 时 NoClassDefFoundError: sun/rmi/server/MarshalOutputStream 的解决办法
今天将一个web应用从weblogic 10.3迁移到jboss EAP 6.3上,该应用使用oracle coherence做为缓存,部署上去后,启动时一直报如下错误: at java.ut ...
随机推荐
- JAVA NIO 类库的异步通信框架netty和mina
Netty 和 Mina 我究竟该选择哪个? 根据我的经验,无论选择哪个,都是个正确的选择.两者各有千秋,Netty 在内存管理方面更胜一筹,综合性能也更优.但是,API 变更的管理和兼容性做的不是太 ...
- CoffeeScript学习(3)—— 函数
CoffeeScript函数 如果大家有看我之前关于ES6的箭头函数的话,这一篇也不会很难理解.我们这一次可以说一下,关于两者的一些细微差别. 基本 在CoffeeScript中,任何函数都是用箭头函 ...
- sizeof 字符数组
比较 #include <stdio.h> #include <string.h> int main(int argc, const char *argv[]) { char ...
- Java常用命令行工具
命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...
- POJ 2349 Arctic Network (最小生成树)
Arctic Network 题目链接: http://acm.hust.edu.cn/vjudge/contest/124434#problem/F Description The Departme ...
- Spring Auto-Wiring Beans with @Autowired annotation
In last Spring auto-wiring in XML example, it will autowired the matched property of any bean in cur ...
- mybatis中为sql中传值#{}和${}的区别
在mybatis中,配置文件中sql的值,用#{}表示,例如: <select id="getTeacher" resultType="Teacher"& ...
- hadoop2.1.0编译安装教程
由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...
- 如何在VC中查询中文,及QT5的中文处理
1,VC中查询所有含中文字符串 使用正则表达式,查询内容为: (".*[\u4E00-\u9FA5]+)|([\u4E00-\u9FA5]+.*") 这样,就可以把代码中的中文都查 ...
- UOJ #148. 【NOIP2015】跳石头 二分
#148. [NOIP2015]跳石头 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://uoj.ac/problem/148 Descripti ...