Developers›Clients & Languages
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 |