What is Hazelcast?
Hazelcast is a clustering and highly scalable data distribution platform for Java.
Features:
Support for cluster info and membership events Dynamic discovery Dynamic scaling to hundreds of servers Dynamic partitioning with backups Dynamic fail-over
Hazelcast is for you if you want to
cache your data (distributed cache) cluster your application partition your in-memory data distribute workload onto many servers take advantage of parallel processing
provide fail-safe data management
Hazelcast is free. It can be freely used in commercial or non-commercial applications and can be described as:
Fail-safe; no losing data after crashes. Dynamically scales to hundreds of servers. Super-easy to deploy and use (include a single jar).
Hazelcast is pure Java. JVMs that are running Hazelcast will dynamically cluster. Although by default Hazelcast will use multicast for discovery, it can also be configured to only use TCP/IP for enviroments where multicast is not available or preferred. Communication among cluster members is always TCP/IP with Java NIO beauty. Default configuration comes with 1 backup so if one node fails, no data will be lost. It is as simple as using java.util.{Queue, Set, List, Map}. Just add the hazelcast.jar into your classpath and start coding.
One Minute Test Drive!
A test application comes with hazelcast.jar that simulates the queue, set, map and lock apis. As you run that application on different JVMs (on local or remote machines), each JVM will automatically join and be part of your cluster.