Posts

Cloud Computing, Cloud Native & Kubernetes by Rahul

Event-Driven Architecture with Apache Kafka for .NET Developers Part 3 - Azure Event Hubs

Apr 11, 2021 · 10 min read

In this series: Development environment and Event producer Event consumer Azure Event Hubs integration (this article) Azure Event Hubs is a horizontally scalable event ingestion service capable of receiving and processing millions of events per second. It supports Apache Kafka Producer and Consumer API that you can use as an alternative to running a self-managed Apache Kafka cluster. Now you can integrate the Kafka ecosystem applications such as Kafdrop and many others with Event Hubs.

#azure#integration#programming

Read more of Event-Driven Architecture with Apache Kafka for .NET Developers Part 3 - Azure Event Hubs

Event-Driven Architecture with Apache Kafka for .NET Developers Part 2 - Event Consumer

Apr 04, 2021 · 8 min read

In this series: Development environment and Event producer Event consumer (this article) Azure Event Hubs integration Let’s carry our discussion forward and implement a consumer of the events published by the Employee service to the leave-applications Kafka topic. We will extend the application that we developed earlier to add two new services to demonstrate how Kafka consumers work: Manager service and Result reader service. Source Code The complete source code of the application and other artifacts is available in my GitHub repository.

#azure#integration#programming

Read more of Event-Driven Architecture with Apache Kafka for .NET Developers Part 2 - Event Consumer

Event-Driven Architecture with Apache Kafka for .NET Developers Part 1 - Event Producer

Mar 29, 2021 · 12 min read

In this series: Development environment and Event producer (this article) Event consumer Azure Event Hubs integration An event-driven architecture utilizes events to trigger and communicate between microservices. An event is a change in the service’s state, such as an item being added to the shopping cart. When an event occurs, the service produces an event notification which is a packet of information about the event. The architecture consists of an event producer, an event router, and an event consumer.

#azure#integration#programming

Read more of Event-Driven Architecture with Apache Kafka for .NET Developers Part 1 - Event Producer

Build a Basic GraphQL Server with ASP.NET Core and Entity Framework in 10 Minutes

Mar 15, 2021 · 11 min read

Since I wrote my first GraphQL post in 2019, much has changed with GraphQL in the .NET space. The ongoing changes have also affected most of the documentation available online. This article will walk you through the steps to create a basic GraphQL API on ASP.NET Core using GraphQL for .NET, Entity Framework Core, Autofac, and the Repository design pattern. I chose the tech stack for the sample application based on the popularity of the frameworks and patterns.

#programming#web

Read more of Build a Basic GraphQL Server with ASP.NET Core and Entity Framework in 10 Minutes

Scheduling Jobs on Heroku with Azure Logic Apps

Feb 05, 2021 · 12 min read

Many times, your application needs to run tasks or jobs on regular intervals. Scheduling might be necessary when polling an API every night, or dispatching emails with reports each week. And sometimes you may find that you need to trigger a host of tasks across multi- or hybrid-cloud and need a way to run these tasks in a reliable, cross-cloud manner. In this article, let’s look at one way to do that using a Heroku dyno for our task, and Microsoft Azure Logic Apps as our scheduler service.

#azure#heroku#integration

Read more of Scheduling Jobs on Heroku with Azure Logic Apps

Tracing and Profiling a .NET Core Application on Azure Kubernetes Service with a Sidecar Container

Feb 03, 2021 · 11 min read

Imagine running a .NET Core application in Kubernetes, which suddenly starts being sluggish, and the telemetry fails to give you a complete picture of the issue. To remediate performance issues of applications, starting with .NET Core 3, Microsoft introduced several .NET Core runtime diagnostics tools to diagnose application issues. dotnet-counters to view Performance Counters. dotnet-dump to capture and analyze Dumps. dotnet-trace to capture runtime events and sample CPU stacks. dotnet-gcdump to collect Garbage Collector dumps of application.

#azure#kubernetes#programming

Read more of Tracing and Profiling a .NET Core Application on Azure Kubernetes Service with a Sidecar Container

Background Jobs in Heroku with Azure Service Bus

Jan 14, 2021 · 11 min read

Web applications are optimized for throughput and latency to service a high number of HTTP requests as quickly as possible. For improved performance, web applications defer the CPU intensive, IO intensive, time-intensive, and scheduled processing workloads to background jobs that run independently of the user interface. These background jobs must function without intervention from the user interface and should not block a synchronous user and system interaction. Offloading slow and compute or memory-intensive activity to background jobs improves web applications' performance and throughput.

#azure#integration#heroku

Read more of Background Jobs in Heroku with Azure Service Bus

Implementing Multi Session Sequential Convoy Pattern with Azure Service Bus and Go

Jan 02, 2021 · 10 min read

In many event-driven applications, preserving the sequence of events is essential. For example, an event-driven eCommerce application might have the following states, transitions, and events. A user adds N items to the basket. This action generates the item added event. The user checks out the basket. This action generates the basket checked out event. The user pays for the items. This action generates the payment made event. Inventory decrements the count of available items by N.

#azure#integration#programming

Read more of Implementing Multi Session Sequential Convoy Pattern with Azure Service Bus and Go

Simplifying ARM Template Deployments with Ansible

Dec 10, 2020 · 6 min read

I discussed how you could use Ansible with Terraform to simplify configuration management in my previous post. If, instead of Terraform, you prefer using Azure Resource Manager (ARM) templates to define the infrastructure and configuration for your project, you can use Ansible for managing parameters that customize each environment by dynamically generating a Resource Manager parameters file. A great thing about using Ansible for your ARM configuration needs is that it includes a suite of modules for interacting with Azure Resource Manager.

#azure#devops

Read more of Simplifying ARM Template Deployments with Ansible

Simplifying Terraform Deployments with Ansible - Part 2

Nov 13, 2020 · 10 min read

In this series Motivation & Ansible 101 Terraform & Ansible I am happy to see that many people are enthusiastic about this series and wish to make their IaC applications better with Ansible. What I intend to do is very simple. I will write an Ansible playbook that uses the template module (see Templating with Jinja2) and a little magic of Jinja2 templates to load appropriate variables and configurations for each Terraform environment.

#devops

Read more of Simplifying Terraform Deployments with Ansible - Part 2