Clients & Languages

Hazelcast clients and programming language APIs allow you to extend the benefits of operational in-memory computing to applications in these languages. These clients and APIs are open source and supported by Hazelcast.

Client Compatibility

  • The Java, .NET, C++, Python and Node.js clients are cross-compatible in versions 4 and 5. This means that any 4.x and 5.x client is compatible with any 4.x and 5.x version of the Hazelcast platform.
  • Go Client versions 1.2 and above are compatible with Platform versions 5.x. Versions 1.0 and 1.1 are compatible with Platform versions 4.x.

Features Implemented

Features Java Member Java Client .NET Client C++ Client Python Client Node.js Client Go
Client
Stream Processing
Stream processing pipelines allow you to process data that’s stored in one location and send the result to another such as from a data lake to an analytics database, or into a payment processing system. Learn more
Pipeline API

(Only Java and Python Jet jobs)

(Only Java and Python Jet jobs)

Data Structures
Hazelcast offers distributed implementations of many common data structures. For each of the client languages, Hazelcast mimics as closely as possible the natural interface of the structure. Learn more
Map
Queue
Set
List
MultiMap
Replicated Map
Ringbuffer
Topic
Reliable Topic
Jcache N/A N/A N/A N/A N/A
Cardinality Estimator
Concurrency Primitives
Data structures in the CP subsystem always maintain linearizability and prefer consistency over availability during network partitions. These data structures are CP with respect to the CAP theorem. Learn more
Semaphore

(CP)

(CP)

(CP)

(CP)

(CP)

Fenced Lock

(CP)

(CP)

(CP)

(CP)

(CP)

(CP)

AtomicLong

(CP)

(CP)

(CP)

(CP)

(CP)

(CP)

AtomicReference

(CP)

(CP)

(CP)

(CP)

(CP)

(CP)

CountDownLatch

(CP)

(CP)

(CP)

(CP)

(CP)

CRDT PN Counter
Flake ID Generator
Distributed Processing
Distributed computing is the process of running computational tasks on different cluster members. Learn more
Distributed Executor Service
Entry Processor
Transactions
You create a TransactionContext object to begin, commit and rollback a transaction. You can obtain transaction-aware instances of queues, maps, sets, lists and multimaps via TransactionContext, work with them and commit/rollback in one shot. Learn more
TxnMap
TxnMultiMap
TxnQueue
TxnList
TxnSet
Query
You can use SQL to run optimized distributed queries on the keys and values of maps in a local cluster. Learn more
SQL
SQL Query Re-Submission
Query (Predicates)
Paging predicate
Partition predicate
Built-in Predicates
Continuous Query Caching N/A N/A N/A N/A N/A
Listener with predicate
Projections
Aggregations
Near Cache
Near Cache is highly recommended for data structures that are mostly read. Learn more
Near Cache Support
HD Memory N/A N/A N/A N/A N/A
Preload Cache from Last Used
Eventual Consistency Control
Configuration
To configure a Hazelcast cluster or client, you can choose either static or dynamic configuration. Learn more
Declarative Configuration (XML/JSON/YAML)

(XML/YAML)

(XML/YAML)

(JSON)

(Dictionary objects as configuration)

(JSON objects as configuration)

(JSON/ YAML/ TOML)

Programmatic Configuration
Client Configuration Import
Fail Fast on Invalid Configuration
Dynamic Configuration
Security
These features allow you to perform security activities, such as intercepting socket connections and remote operations executed by the clients, encrypting the communications between the members at socket level and using SSL socket communication. Learn more
SSL Support
XA Transactions
Mutual Authentication
Authorization
Custom Authentication Modules
Token-based credentials
Kerberos authentication
Cloud
Deploy a Hazelcast cluster in cloud environments including Hazelcast Viridian Managed Services, Amazon AWS, Google Cloud Platform, and Azure. Learn more
Hazelcast Cloud
Kubernetes
AWS
Azure
Google Cloud Platform
Pivotal Cloud Foundry
Docker
Apache jclouds
Consul
etcd
Eureka
Heroku
Zookeeper
Networking
Unisocket Client
Smart Client
Event Listeners
You can register for Hazelcast entry events so you are notified when those events occur. Learn more
Lifecycle Listener
Event Listeners
Sub-Listener Interfaces for Map Listener
Monitoring
Hazelcast offers an extended set of diagnostics plugins for both Hazelcast members and clients. Learn more
Diagnostics
Client Side Statistics
Client Near Cache Stats
Client Runtime Stats
Client Operating Systems Stats
Serialization
For data to be sent over a network between cluster members and/or clients, it needs to be serialized into raw bytes. Hazelcast has many serialization options to choose from, depending on what you plan on doing with your data. Learn more
Compact Serialization
Portable Serialization
IdentifiedDataSerializable
JSON (HazelcastJsonValue)
DataSerializable N/A N/A N/A N/A N/A
Custom Serializers
Global Serializers
Client Connectivity
By default, members allow connections from any Hazelcast client. So, any client with access to a member can connect to the cluster and use its resources. Learn more
Connection Strategy N/A
Connection Retry N/A
Blue/Green Deployments and Disaster Recovery N/A