Get Started

Get Started

These guides demonstrate how to get started quickly with Hazelcast IMDG and Hazelcast Jet.

Hazelcast IMDG

Learn how to store and retrieve data from a distributed key-value store using Hazelcast IMDG. In this guide you’ll learn how to:

  • Create a cluster of 3 members.
  • Start Hazelcast Management Center
  • Add data to the cluster using a sample client in the language of your choice
  • Add and remove some cluster members to demonstrate data balancing capabilities of Hazelcast

Hazelcast Jet

Learn how to build a distributed data processing pipeline in Java using Hazelcast Jet. In this guide you’ll learn how to:

  • Install Hazelcast Jet and form a cluster on your computer
  • Build a simple pipeline that receives a stream of data, does some calculations and outputs some results
  • Submit the pipeline as a job to the cluster and observe the results
  • Scale the cluster up and down while the job is still running

Hazelcast IMDG Go Client

Hazelcast IMDG is a feature-rich and developer-friendly in-memory caching solution for your Go applications.

  • Access all of the Hazelcast data structures plus distributed queues, topics, and more with the Hazelcast IMDG Go Client.
  • Declarative configuration support via JSON.
  • High-performance aggregation functions, such as sum, average, max, and min, for Hazelcast Map entries. They can run in parallel for each partition and are highly optimized for speed and low-memory consumption.
  • Use the Projection API to strip down each result object in order to avoid redundant network traffic.
Quick Start + Download

Quick Start + Download

Quick Start:

Download Hazelcast IMDG and start it.

Use the following command to install the Hazelcast Go client:
go get github.com/hazelcast/hazelcast-go-client

Visit the Github repo for code samples and API documentation.

Version Downloads Documentation
Hazelcast IMDG Go Client 0.6.0 (latest)
03/11/2020
Hazelcast IMDG Go Client 0.5
03/20/2019
Hazelcast IMDG Go Client 0.4
12/27/2018
Hazelcast IMDG Go Client 0.3
05/31/2018

For all downloads please see the Download Archives

Previous Releases
Roadmap

Roadmap

Go Client 4.0

  • Hazelcast IMDG 4.0 Changes: Client protocol enhancements, architectural improvements, Serialization improvements.
  • CP Subsystem Support: New Concurrency APIs including FencedLock, AtomicLong, Semaphore, CountDownLatch, and AtomicReference.
  • Backup Acknowledgment: Significantly improved client performance by eliminating the sync backup wait from the client and send the backup ACK to the client.
  • Ownerless Client: Simpler design to track member leaves and joins to the cluster.
  • Go Mod Support: Allow users to grab a specific client version rather than the master one.

Go Client Backlog

  • Sessions in Gorilla: Session backend for Gorilla web toolkit that stores sessions in Hazelcast.
  • Istio based Rate Limiting: Ability to store quota values via Istio, an open platform-independent service mesh that provides traffic management, policy enforcement, and telemetry collection.
  • Near Cache: An implementation of Hazelcast’s near cache functionality for GoLang client.
  • Pipelining API: Adding pipeline to any asynchronous call so that the performance improves.
Client Features

Features Implemented for this Client

DATA STRUCTURES

Go Client 0.6.0

Map

Queue

Set

List

MultiMap

ReplicatedMap

Ring Buffer

Topic

Reliable Topic

JCache

N/A

Cardinality Estimator

CONCURRENCY PRIMITIVES

Go Client 0.6.0

Lock

Condition

Semaphore

AtomicLong

AtomicReference

ID Generator

CountDownLatch

CRDT PN Counter

Flake ID Generator

DISTRIBUTED PROCESSING

Go Client 0.6.0

Distributed Executor Service

Event Listeners

Sub-Listener Interfaces for Map Listener

Entry Processor

TRANSACTIONS

Go Client 0.6.0

TxnMap

TxnMultiMap

TxnQueue

TxnList

TxnSet

QUERY

Go Client 0.6.0

Query (Predicates)

Paging predicates

Partition predicate

Built-in Predicates

Continuous Query Caching

N/A

Listener with Predicate

Projections

Fast Aggregations

NEAR CACHE

Go Client 0.6.0

Near Cache Support

HD Memory

N/A

Preload Cache from Last Used

Eventual Consistency Control

CONFIGURATION

Go Client 0.6.0

Declarative Configuration (XML/JSON/YAML)

Programmatic Configuration

Client Configuration Import

Fail Fast on Invalid Configuration

SECURITY

Go Client 0.6.0

SSL Support

XA Transactions

Mutual Authentication

Authorization

Custom Authentication Modules

MANAGEMENT CENTER

Go Client 0.6.0

Management Center Integration / Awareness

Client Near Cache Stats

Client Runtime Stats

Client Operating Systems Stats

CLOUD

Go Client 0.6.0

Hazelcast Cloud

Kubernetes

AWS

Azure

Google Cloud Platform

Pivotal Cloud Foundry

Docker

Apache jclouds

Consul

etcd

Eureka

Heroku

Zookeeper

INFRASTRUCTURE

Go Client 0.6.0

Smart Client

Unisocket Client

Lifecycle Service

HeartBeat

Backup Acknowledgment to Client

Diagnostics

SERIALIZATION

Go Client 0.6.0

DataSerializable

N/A

IdentifiedDataSerializable

Portable Serialization

Portable Serialization

Global Serializers

CLIENT CONNECTIVITY

Go Client 0.6.0

Connection Strategy

Connection Retry

Blue/Green Deployments and Disaster Recovery

Support for Clients & Languages

Jump into the discussion on our groups.

Join Us On Slack