2012-11-27 21:29:02 +07:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--
|
2018-01-23 16:19:21 +07:00
|
|
|
~ Copyright (c) 2008-2017, Hazelcast, Inc. All Rights Reserved.
|
2012-11-27 21:29:02 +07:00
|
|
|
~
|
|
|
|
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
~ you may not use this file except in compliance with the License.
|
|
|
|
~ You may obtain a copy of the License at
|
|
|
|
~
|
|
|
|
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
~
|
|
|
|
~ Unless required by applicable law or agreed to in writing, software
|
|
|
|
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
~ See the License for the specific language governing permissions and
|
|
|
|
~ limitations under the License.
|
|
|
|
-->
|
|
|
|
|
2018-01-23 16:19:21 +07:00
|
|
|
<!--
|
|
|
|
The default Hazelcast configuration. This is used when no hazelcast.xml is present.
|
|
|
|
Please see the schema for how to configure Hazelcast at https://hazelcast.com/schema/config/hazelcast-config-3.9.xsd
|
|
|
|
or the documentation at https://hazelcast.org/documentation/
|
|
|
|
-->
|
|
|
|
<!--suppress XmlDefaultAttributeValue -->
|
|
|
|
<hazelcast xsi:schemaLocation="http://www.hazelcast.com/schema/config hazelcast-config-3.9.xsd"
|
2012-11-27 21:29:02 +07:00
|
|
|
xmlns="http://www.hazelcast.com/schema/config"
|
|
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
|
|
<group>
|
|
|
|
<name>dev</name>
|
|
|
|
<password>dev-pass</password>
|
|
|
|
</group>
|
|
|
|
<management-center enabled="false">http://localhost:8080/mancenter</management-center>
|
|
|
|
<network>
|
2018-01-23 16:19:21 +07:00
|
|
|
<port auto-increment="true" port-count="100">5701</port>
|
2012-11-27 21:29:02 +07:00
|
|
|
<outbound-ports>
|
|
|
|
<!--
|
|
|
|
Allowed port range when connecting to other nodes.
|
|
|
|
0 or * means use system provided port.
|
|
|
|
-->
|
|
|
|
<ports>0</ports>
|
|
|
|
</outbound-ports>
|
|
|
|
<join>
|
|
|
|
<multicast enabled="true">
|
|
|
|
<multicast-group>224.2.2.3</multicast-group>
|
|
|
|
<multicast-port>54327</multicast-port>
|
|
|
|
</multicast>
|
|
|
|
<tcp-ip enabled="false">
|
|
|
|
<interface>127.0.0.1</interface>
|
2018-01-23 16:19:21 +07:00
|
|
|
<member-list>
|
|
|
|
<member>127.0.0.1</member>
|
|
|
|
</member-list>
|
2012-11-27 21:29:02 +07:00
|
|
|
</tcp-ip>
|
2018-03-14 02:32:34 +07:00
|
|
|
<aws enabled="false"/>
|
2018-01-23 16:19:21 +07:00
|
|
|
<discovery-strategies>
|
2018-03-14 02:32:34 +07:00
|
|
|
<discovery-strategy enabled="false" class="com.hazelcast.aws.AwsDiscoveryStrategy">
|
|
|
|
<properties>
|
|
|
|
<property name="access-key">my-access-key</property>
|
|
|
|
<property name="secret-key">my-secret-key</property>
|
|
|
|
<!--optional, default is us-east-1 -->
|
|
|
|
<property name="region">us-east-1</property>
|
|
|
|
<property name="host-header">ec2.amazonaws.com</property>
|
|
|
|
<!-- optional, only instances belonging to this group will be discovered, default will try all running instances -->
|
|
|
|
<property name="security-group-name">hazelcast-sg</property>
|
|
|
|
<property name="tag-key">type</property>
|
|
|
|
<property name="tag-value">hz-nodes</property>
|
|
|
|
<property name="connection-timeout-seconds">30</property>
|
|
|
|
</properties>
|
|
|
|
</discovery-strategy>
|
2018-01-23 16:19:21 +07:00
|
|
|
</discovery-strategies>
|
2012-11-27 21:29:02 +07:00
|
|
|
</join>
|
|
|
|
<interfaces enabled="false">
|
|
|
|
<interface>10.10.1.*</interface>
|
|
|
|
</interfaces>
|
2018-01-23 16:19:21 +07:00
|
|
|
<ssl enabled="false"/>
|
|
|
|
<socket-interceptor enabled="false"/>
|
2012-11-27 21:29:02 +07:00
|
|
|
<symmetric-encryption enabled="false">
|
|
|
|
<!--
|
|
|
|
encryption algorithm such as
|
|
|
|
DES/ECB/PKCS5Padding,
|
|
|
|
PBEWithMD5AndDES,
|
|
|
|
AES/CBC/PKCS5Padding,
|
|
|
|
Blowfish,
|
|
|
|
DESede
|
|
|
|
-->
|
|
|
|
<algorithm>PBEWithMD5AndDES</algorithm>
|
|
|
|
<!-- salt value to use when generating the secret key -->
|
|
|
|
<salt>thesalt</salt>
|
|
|
|
<!-- pass phrase to use when generating the secret key -->
|
|
|
|
<password>thepass</password>
|
|
|
|
<!-- iteration count to use when generating the secret key -->
|
|
|
|
<iteration-count>19</iteration-count>
|
|
|
|
</symmetric-encryption>
|
|
|
|
</network>
|
|
|
|
<partition-group enabled="false"/>
|
2018-01-23 16:19:21 +07:00
|
|
|
<executor-service name="default">
|
|
|
|
<pool-size>16</pool-size>
|
|
|
|
<!--Queue capacity. 0 means Integer.MAX_VALUE.-->
|
|
|
|
<queue-capacity>0</queue-capacity>
|
2012-11-27 21:29:02 +07:00
|
|
|
</executor-service>
|
|
|
|
<queue name="default">
|
|
|
|
<!--
|
|
|
|
Maximum size of the queue. When a JVM's local queue size reaches the maximum,
|
|
|
|
all put/offer operations will get blocked until the queue size
|
|
|
|
of the JVM goes down below the maximum.
|
|
|
|
Any integer between 0 and Integer.MAX_VALUE. 0 means
|
|
|
|
Integer.MAX_VALUE. Default is 0.
|
|
|
|
-->
|
2018-01-23 16:19:21 +07:00
|
|
|
<max-size>0</max-size>
|
|
|
|
<!--
|
|
|
|
Number of backups. If 1 is set as the backup-count for example,
|
|
|
|
then all entries of the map will be copied to another JVM for
|
|
|
|
fail-safety. 0 means no backup.
|
|
|
|
-->
|
|
|
|
<backup-count>1</backup-count>
|
|
|
|
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
2018-01-23 16:19:21 +07:00
|
|
|
Number of async backups. 0 means no backup.
|
2012-11-27 21:29:02 +07:00
|
|
|
-->
|
2018-01-23 16:19:21 +07:00
|
|
|
<async-backup-count>0</async-backup-count>
|
|
|
|
|
|
|
|
<empty-queue-ttl>-1</empty-queue-ttl>
|
2012-11-27 21:29:02 +07:00
|
|
|
</queue>
|
|
|
|
<map name="default">
|
2018-01-23 16:19:21 +07:00
|
|
|
<!--
|
|
|
|
Data type that will be used for storing recordMap.
|
|
|
|
Possible values:
|
|
|
|
BINARY (default): keys and values will be stored as binary data
|
|
|
|
OBJECT : values will be stored in their object forms
|
|
|
|
NATIVE : values will be stored in non-heap region of JVM
|
|
|
|
-->
|
|
|
|
<in-memory-format>BINARY</in-memory-format>
|
|
|
|
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
|
|
|
Number of backups. If 1 is set as the backup-count for example,
|
|
|
|
then all entries of the map will be copied to another JVM for
|
|
|
|
fail-safety. 0 means no backup.
|
|
|
|
-->
|
2017-05-25 15:49:51 +07:00
|
|
|
<backup-count>0</backup-count>
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
|
|
|
Number of async backups. 0 means no backup.
|
|
|
|
-->
|
|
|
|
<async-backup-count>0</async-backup-count>
|
|
|
|
<!--
|
|
|
|
Maximum number of seconds for each entry to stay in the map. Entries that are
|
|
|
|
older than <time-to-live-seconds> and not updated for <time-to-live-seconds>
|
|
|
|
will get automatically evicted from the map.
|
|
|
|
Any integer between 0 and Integer.MAX_VALUE. 0 means infinite. Default is 0.
|
|
|
|
-->
|
|
|
|
<time-to-live-seconds>0</time-to-live-seconds>
|
|
|
|
<!--
|
|
|
|
Maximum number of seconds for each entry to stay idle in the map. Entries that are
|
|
|
|
idle(not touched) for more than <max-idle-seconds> will get
|
|
|
|
automatically evicted from the map. Entry is touched if get, put or containsKey is called.
|
|
|
|
Any integer between 0 and Integer.MAX_VALUE. 0 means infinite. Default is 0.
|
|
|
|
-->
|
2017-05-24 16:31:41 +07:00
|
|
|
<max-idle-seconds>1800</max-idle-seconds>
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
|
|
|
Valid values are:
|
|
|
|
NONE (no eviction),
|
|
|
|
LRU (Least Recently Used),
|
|
|
|
LFU (Least Frequently Used).
|
|
|
|
NONE is the default.
|
|
|
|
-->
|
2017-03-27 19:16:36 +07:00
|
|
|
<eviction-policy>LRU</eviction-policy>
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
|
|
|
Maximum size of the map. When max size is reached,
|
|
|
|
map is evicted based on the policy defined.
|
|
|
|
Any integer between 0 and Integer.MAX_VALUE. 0 means
|
|
|
|
Integer.MAX_VALUE. Default is 0.
|
|
|
|
-->
|
2018-01-23 16:19:21 +07:00
|
|
|
<max-size policy="PER_NODE">1000</max-size>
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
2018-01-23 16:19:21 +07:00
|
|
|
`eviction-percentage` property is deprecated and will be ignored when it is set.
|
|
|
|
|
|
|
|
As of version 3.7, eviction mechanism changed.
|
|
|
|
It uses a probabilistic algorithm based on sampling. Please see documentation for further details
|
2012-11-27 21:29:02 +07:00
|
|
|
-->
|
|
|
|
<eviction-percentage>25</eviction-percentage>
|
2018-01-23 16:19:21 +07:00
|
|
|
<!--
|
|
|
|
`min-eviction-check-millis` property is deprecated and will be ignored when it is set.
|
|
|
|
|
|
|
|
As of version 3.7, eviction mechanism changed.
|
|
|
|
It uses a probabilistic algorithm based on sampling. Please see documentation for further details
|
|
|
|
-->
|
|
|
|
<min-eviction-check-millis>100</min-eviction-check-millis>
|
2012-11-27 21:29:02 +07:00
|
|
|
<!--
|
|
|
|
While recovering from split-brain (network partitioning),
|
|
|
|
map entries in the small cluster will merge into the bigger cluster
|
|
|
|
based on the policy set here. When an entry merge into the
|
|
|
|
cluster, there might an existing entry with the same key already.
|
|
|
|
Values of these entries might be different for that same key.
|
|
|
|
Which value should be set for the key? Conflict is resolved by
|
2018-01-23 16:19:21 +07:00
|
|
|
the policy set here. Default policy is PutIfAbsentMapMergePolicy
|
2012-11-27 21:29:02 +07:00
|
|
|
|
|
|
|
There are built-in merge policies such as
|
2018-01-23 16:19:21 +07:00
|
|
|
com.hazelcast.map.merge.PassThroughMergePolicy; entry will be overwritten if merging entry exists for the key.
|
|
|
|
com.hazelcast.map.merge.PutIfAbsentMapMergePolicy ; entry will be added if the merging entry doesn't exist in the cluster.
|
|
|
|
com.hazelcast.map.merge.HigherHitsMapMergePolicy ; entry with the higher hits wins.
|
|
|
|
com.hazelcast.map.merge.LatestUpdateMapMergePolicy ; entry with the latest update wins.
|
|
|
|
-->
|
|
|
|
<merge-policy>com.hazelcast.map.merge.PutIfAbsentMapMergePolicy</merge-policy>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
Control caching of de-serialized values. Caching makes query evaluation faster, but it cost memory.
|
|
|
|
Possible Values:
|
|
|
|
NEVER: Never cache deserialized object
|
|
|
|
INDEX-ONLY: Caches values only when they are inserted into an index.
|
|
|
|
ALWAYS: Always cache deserialized values.
|
2012-11-27 21:29:02 +07:00
|
|
|
-->
|
2018-01-23 16:19:21 +07:00
|
|
|
<cache-deserialized-values>INDEX-ONLY</cache-deserialized-values>
|
|
|
|
|
2012-11-27 21:29:02 +07:00
|
|
|
</map>
|
2018-01-23 16:19:21 +07:00
|
|
|
|
|
|
|
<!--
|
|
|
|
Configuration for an event journal. The event journal keeps events related
|
|
|
|
to a specific partition and data structure. For instance, it could keep
|
|
|
|
map add, update, remove, merge events along with the key, old value, new value and so on.
|
|
|
|
-->
|
|
|
|
<event-journal enabled="false">
|
|
|
|
<mapName>mapName</mapName>
|
|
|
|
<capacity>10000</capacity>
|
|
|
|
<time-to-live-seconds>0</time-to-live-seconds>
|
|
|
|
</event-journal>
|
|
|
|
|
|
|
|
<event-journal enabled="false">
|
|
|
|
<cacheName>cacheName</cacheName>
|
|
|
|
<capacity>10000</capacity>
|
|
|
|
<time-to-live-seconds>0</time-to-live-seconds>
|
|
|
|
</event-journal>
|
|
|
|
|
|
|
|
<multimap name="default">
|
|
|
|
<backup-count>1</backup-count>
|
|
|
|
<value-collection-type>SET</value-collection-type>
|
|
|
|
</multimap>
|
|
|
|
|
|
|
|
<list name="default">
|
|
|
|
<backup-count>1</backup-count>
|
|
|
|
</list>
|
|
|
|
|
|
|
|
<set name="default">
|
|
|
|
<backup-count>1</backup-count>
|
|
|
|
</set>
|
|
|
|
|
|
|
|
<jobtracker name="default">
|
|
|
|
<max-thread-size>0</max-thread-size>
|
|
|
|
<!-- Queue size 0 means number of partitions * 2 -->
|
|
|
|
<queue-size>0</queue-size>
|
|
|
|
<retry-count>0</retry-count>
|
|
|
|
<chunk-size>1000</chunk-size>
|
|
|
|
<communicate-stats>true</communicate-stats>
|
|
|
|
<topology-changed-strategy>CANCEL_RUNNING_OPERATION</topology-changed-strategy>
|
|
|
|
</jobtracker>
|
|
|
|
|
|
|
|
<semaphore name="default">
|
|
|
|
<initial-permits>0</initial-permits>
|
|
|
|
<backup-count>1</backup-count>
|
|
|
|
<async-backup-count>0</async-backup-count>
|
|
|
|
</semaphore>
|
|
|
|
|
|
|
|
<reliable-topic name="default">
|
|
|
|
<read-batch-size>10</read-batch-size>
|
|
|
|
<topic-overload-policy>BLOCK</topic-overload-policy>
|
|
|
|
<statistics-enabled>true</statistics-enabled>
|
|
|
|
</reliable-topic>
|
|
|
|
|
|
|
|
<ringbuffer name="default">
|
|
|
|
<capacity>10000</capacity>
|
|
|
|
<backup-count>1</backup-count>
|
|
|
|
<async-backup-count>0</async-backup-count>
|
|
|
|
<time-to-live-seconds>0</time-to-live-seconds>
|
|
|
|
<in-memory-format>BINARY</in-memory-format>
|
|
|
|
</ringbuffer>
|
|
|
|
|
|
|
|
<serialization>
|
|
|
|
<portable-version>0</portable-version>
|
|
|
|
</serialization>
|
|
|
|
|
|
|
|
<services enable-defaults="true"/>
|
|
|
|
|
|
|
|
<lite-member enabled="false"/>
|
|
|
|
|
|
|
|
</hazelcast>
|