缓存的启动可以使用进程内启动,也可以使用shell脚本独立启动。
由于Igite使用了JDK8中的NIO特性,使用JDK11时需要加入相关的jar包。随zip版本发布的脚本中,在参数上内置了JDK11的支持,但使用其它版本的时候需要注意JDK版本的问题。
zip版本的下载地址:https://ignite.apache.org/download.cgi
作为进程内缓存快速启动
以springboot应用为例,引入下列依赖
<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-core</artifactId>
<version>${ignite.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-spring</artifactId>
<version>${ignite.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-indexing</artifactId>
<version>${ignite.version}</version>
</dependency>
Ignite的启动需要进行配置,这里我们先使用程序进行配置,默认情况下,ClientMode = false
public class HelloWorld {
public static void main(String[] args) throws IgniteException {
IgniteConfiguration cfg = new IgniteConfiguration();
cfg.setPeerClassLoadingEnabled(true);
TcpDiscoveryMulticastIpFinder ipFinder = new TcpDiscoveryMulticastIpFinder();
ipFinder.setAddresses(Collections.singletonList("127.0.0.1:47500..47509"));
cfg.setDiscoverySpi(new TcpDiscoverySpi().setIpFinder(ipFinder));
Ignite ignite = Ignition.start(cfg);
IgniteCache<Integer, String> cache = ignite.getOrCreateCache("myCache");
cache.put(1, "Hello");
cache.get(1);
ignite.close();
}
}
Ignite的启动也可以使用配置文件进行配置
String path = Example.class.getResource("/example-default.xml").getFile();
this.ignite = Ignition.start(path);
配置文件example-default.xml内容如下
<bean class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="peerClassLoadingEnabled" value="true"/>
<property name="discoverySpi">
<bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
<property name="ipFinder">
<bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
<property name="addresses">
<list>
<value>127.0.0.1:47500..47509</value>
</list>
</property>
</bean>
</property>
</bean>
</property>
<property name="cacheConfiguration">
<list>
<bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="myCache"/>
<property name="cacheMode" value="PARTITIONED"/>
<property name="onheapCacheEnabled" value="true"/>
<property name="backups" value="1"/>
</bean>
</property>
</bean>
通常使用xml进行配置,可以对cache schema进行良好的管理控制
作为独立进程启动
zip包解压后,进入bin目录,启动即可
./ignite.sh ../examples/config/example-ignite.xml
配置文件的说明
配置文件的根是IgniteConfiguration,下面主要的对象包括
- clientMode:是否作为server节点提供缓存服务,还是只作为client节点加入
- discoverySpi: 这个是网络相关的配置,这里
- dataStorageConfiguration:这个是存储相关的配置,包括使用内存大小,持久化等
- cacheConfiguration:
- 自定义配置项
网友评论