<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Yüce Tekol</title>
    <description>The latest articles on Forem by Yüce Tekol (@yuce).</description>
    <link>https://forem.com/yuce</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F667576%2Fafd1fb6f-5a30-4e6b-936b-f01225520cdf.jpg</url>
      <title>Forem: Yüce Tekol</title>
      <link>https://forem.com/yuce</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/yuce"/>
    <language>en</language>
    <item>
      <title>New Release: Hazelcast Go Client v1.0.0</title>
      <dc:creator>Yüce Tekol</dc:creator>
      <pubDate>Thu, 15 Jul 2021 11:18:57 +0000</pubDate>
      <link>https://forem.com/hazelcast/new-release-hazelcast-go-client-v1-0-0-2g5n</link>
      <guid>https://forem.com/hazelcast/new-release-hazelcast-go-client-v1-0-0-2g5n</guid>
      <description>&lt;p&gt;We released &lt;a href="https://github.com/hazelcast/hazelcast-go-client/releases/tag/v1.0.0" rel="noopener noreferrer"&gt;Hazelcast Go Client v1.0.0&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This is the first major release of the revamped Go client. Of course the biggest news is, the client is compatible with Hazelcast 4.x and the upcoming Hazelcast 5.x. Here are the features included in this release:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Distributed Data Structures: &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#Map" rel="noopener noreferrer"&gt;Map&lt;/a&gt;, &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#ReplicatedMap" rel="noopener noreferrer"&gt;Replicated Map&lt;/a&gt;, &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#Queue" rel="noopener noreferrer"&gt;Queue&lt;/a&gt;, &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#Topic" rel="noopener noreferrer"&gt;Topic&lt;/a&gt;, &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#List" rel="noopener noreferrer"&gt;List&lt;/a&gt;, &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#Set" rel="noopener noreferrer"&gt;Set&lt;/a&gt;, &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#PNCounter" rel="noopener noreferrer"&gt;PNCounter&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;Map &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0/aggregate" rel="noopener noreferrer"&gt;aggregations&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;Improved Map locks,&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client/cluster@v1.0.0#hdr-Load_Balancer" rel="noopener noreferrer"&gt;Load balancer&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0/cluster#hdr-External_Client_Public_Address_Discovery" rel="noopener noreferrer"&gt;External client public address discovery&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;Lifecycle, cluster membership and &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#hdr-Listening_for_Distributed_Object_Events" rel="noopener noreferrer"&gt;distributed object listeners&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;Smart routing,&lt;/li&gt;
&lt;li&gt;Ownerless client,&lt;/li&gt;
&lt;li&gt;JSON, Identified Data, Portable and Global &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0/serialization" rel="noopener noreferrer"&gt;serialization&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;SSL connections (requires Hazelcast Enterprise),&lt;/li&gt;
&lt;li&gt;Username/password credentials (requires Hazelcast Enterprise),&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#hdr-Management_Center_Integration" rel="noopener noreferrer"&gt;Hazelcast Management Center integration&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0/cluster#hdr-Hazelcast_Cloud_Discovery" rel="noopener noreferrer"&gt;Hazelcast Cloud integration&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;JSON &lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client@v1.0.0#hdr-Configuration" rel="noopener noreferrer"&gt;configuration&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are some missing features which exist in Go Client v0.6.0, such as the &lt;a href="https://docs.hazelcast.com/imdg/4.2/performance/near-cache.html" rel="noopener noreferrer"&gt;Near Cache&lt;/a&gt;, but we will complete them in the coming months, prioritized by the needs of our users.&lt;/p&gt;

&lt;p&gt;Apart from Hazelcast 4.x+ compatibility, we aimed to implement conventions and best practices of the Go ecosystem. Here are some of the highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go context: Enables Go client to play well with other libraries that support the context package. Any client function call can be canceled manually or after a deadline. This was one of the most wanted features of the new Go client.&lt;/li&gt;
&lt;li&gt;Go modules: Enables depending on a specific release without third party tools.&lt;/li&gt;
&lt;li&gt;Idiomatic errors: The client library returns errors which can be easily unwrapped using the standard errors package.&lt;/li&gt;
&lt;li&gt;Zero value configuration: The zero value of client configuration is the default configuration. Apart from being encouraged in idiomatic Go, it helps us provide a natural way of supporting JSON configuration.&lt;/li&gt;
&lt;li&gt;Package based code layout: The client code is split into logical packages which collect relevant code together, such as cluster, aggregate, serialization, types and others.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some useful links:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/hazelcast/hazelcast-go-client" rel="noopener noreferrer"&gt;Official repository&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pkg.go.dev/github.com/hazelcast/hazelcast-go-client" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.hazelcast.com/home/index.html" rel="noopener noreferrer"&gt;Hazelcast main documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We are looking forward to feedback in order to provide the features our users want. Join us at our &lt;a href="https://hazelcastcommunity.slack.com/channels/go-client" rel="noopener noreferrer"&gt;Slack channel at Hazelcast Community&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
