Author Archives: Abhishek

About Abhishek

Loves Java EE, distributed KV stores and messaging systems. Frequently blogs at abhirockzz.wordpress.com as well as simplydistributed.wordpress.com. Oh, I have also authored a few (mini) books, articles, Refcards etc. :-)

(eBook) Practical Redis: first few chapters released!

I am happy to announce that the first few chapters of Practical Redis are now available About Practical Redis It is a hands-on, code-driven guide to Redis where each chapter is based on an application (simple to medium complexity) which demonstrates … Continue reading

Posted in Distributed systems, nosql, redis, go | Tagged , , , , , , , , | Leave a comment

Redis geo.lua example using Go

I stumbled upon geo.lua which seemed to be an interesting library It’s described as – “… a Lua library containing miscellaneous geospatial helper routines for use with Redis“ Here is an example of using it with the Go Redis client (go-redis). … Continue reading

Posted in go, nosql, redis | Tagged , , , , , , | Leave a comment

certificate error with Go HTTP client in alpine Docker

Using the Go HTTP client from a alpine docker image will result in this error – x509: failed to load system roots and no roots provided Solution: alpine is a minimal image, hence CA certificates are required. You add that … Continue reading

Posted in go | Tagged , , , | Leave a comment

etcd Watch example using Go client

etcd is a distributed, highly available key-value store which serves as the persistent back end for Kubernetes Here is an example to demonstrate its Watch feature. For details, check out the README (and the sample code) on Github It uses etcd Docker … Continue reading

Posted in Distributed systems | Tagged , , , | Leave a comment

NATS on Kubernetes example

In a previous blog, you saw an example of NATS along with producer and consumer – based on Docker Compose. This post uses the same app, but runs on Kubernetes For how to run, follow the README on Github High … Continue reading

Posted in Distributed systems, Kubernetes, nats | Tagged , , , , , , , , | Leave a comment

Redis tech tip #1

In order to delete members from your Redis Geo-spatial collection, you can use ZREM (underneath the hood, the data is stored in a sorted set) Add a few (Indian) cities GEOADD IndianCities 28.6108127 77.2060241 NewDelhi ​GEOADD IndianCities 12.9715987 77.5945627 Bangalore GEOADD IndianCities 13.0826802 80.2707184 … Continue reading

Posted in nosql, redis | Tagged , , , | Leave a comment

NATS & Kafka: random notes

This is not NATS vs Kafka by any means – just jotting down some info. NATS recently joined CNCF (which host projects like Kubernetes, Prometheus etc. – look at the dominance of Golang here!) and that’s when it caught my attention … Continue reading

Posted in Distributed systems, Kafka, messaging | Tagged , , , | Leave a comment

NATS – quick start with Docker

Here is a hello-world example (on Github) for getting started with natsio – a distributed messaging server written in Go It consists of the following components which are managed via Docker Compose NATS server (of course) a Java producer/publisher a Go consumer/subscriber … Continue reading

Posted in Distributed systems, messaging | Tagged , , , , | 1 Comment

Session @ Oracle Code San Francisco 2017

Here are the details for my talk @ Oracle Code (a track at JavaOne 2017) – Streaming Solutions for Real time problems (Stream Processing solutions using Apache Kafka, Kafka Streams and Redis) Code (Github) – https://github.com/abhirockzz/accs-ehcs-stream-processing Video Slides Streaming Solutions for … Continue reading

Posted in Distributed systems, Kafka | Tagged , , , , , , , , , | Leave a comment

Debezium test drive

Debezium is an open source, distributed change data capture system built on top of Apache Kafka. I tried it out and the project is available on Github Setup Details are in the README. It uses the Debezium tutorial as a … Continue reading

Posted in Distributed systems, Kafka | Tagged , , , , , , | 1 Comment