Clivern

A Software Engineer and Occasional Writer.

Separate Test Cases in Golang With Build Tags

02 January 2021

A build tag or a build constraint as described in the build package documentation, is a line comment that begins `// +build` that lists the conditions under which a file should be included in the package.

Read More

Kubernetes Services in a Nutshell

30 May 2020

Service is a resource you create to make a single, constant point of entry to a group of pods providing the same service. Each service has an IP address and port that never change while the service exists. Clients can open connections to that IP and port, and those connections are then routed to one of the pods backing that service. This way, clients of a service don’t need to know the location of individual pods providing the service, allowing those pods to be moved around the cluster at any time.

Read More

Apache Cassandra for Developers Part 1

26 May 2020

Apache Cassandra is a free and open-source, distributed, NoSQL database management system designed to handle large amounts of data across many servers, providing high availability with no single point of failure. Cassandra offers robust support for clusters spanning multiple datacenters, with asynchronous masterless replication allowing low latency operations for all clients.

Read More

Kubernetes Deployment in a Nutshell

04 April 2020

Deployment is a higher-level resource meant for deploying applications and updating them declaratively, instead of doing it through a ReplicationController or a ReplicaSet, which are both considered lower-level concepts.

Read More

Concurrency in Elixir

03 January 2020

Concurrency is a fundamental concept in Elixir, a functional programming language built on the Erlang virtual machine (BEAM). Elixir provides powerful tools and abstractions for managing concurrent processes, making it ideal for building scalable and fault-tolerant systems.

Read More

A Deep Dive into Metrics Based Alerting With Elasticsearch

02 January 2020

Elasticsearch is an open-source, distributed search and analytics engine based on the Lucene search engine library. It is designed to handle large volumes of data in real-time and provides fast, efficient search and analysis capabilities. Elasticsearch is commonly used for log analysis, full-text search, and business analytics

Read More

Leader Election with Consul and Golang

16 June 2019

Leader election is the process of designating a single node as the organizer of some task distributed among several nodes. The leader will be responsible for managing the others and coordinate the actions performed by other nodes. If for any reason the leader fails, other nodes will elect another leader and so on. This can help to ensure that nodes don't conflict with each other.

Read More