<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Cloud-Native on Thorsten Hans</title>
		<link>https://thorsten-hans.com/tags/cloud-native/</link>
		<description>Recent content in Cloud-Native on Thorsten Hans</description>
		<generator>Hugo</generator>
		<language>en-US</language>
		
		
		
		
			<lastBuildDate>Tue, 06 Dec 2022 20:39:10 +0100</lastBuildDate>
		
			<atom:link href="https://thorsten-hans.com/tags/cloud-native/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Hot-Reload .NET Configuration in Kubernetes with ConfigMaps</title>
				<link>https://thorsten-hans.com/hot-reload-net-configuration-in-kubernetes-with-configmaps/</link>
				<pubDate>Tue, 06 Dec 2022 20:39:10 +0100</pubDate>
				<guid>https://thorsten-hans.com/hot-reload-net-configuration-in-kubernetes-with-configmaps/</guid>
				<description>&lt;p&gt;Leveraging ConfigMaps, we can inject configuration data into applications running in Kubernetes. In this article, we’ll look at how to use a Kubernetes ConfigMap to configure a .NET application from the outside and automatically reload changes applied to the ConfigMap.&lt;/p&gt;&#xA;&lt;p&gt;Automatically reloading configuration data without redeploying the application and without doing a code change is super handy - not just for cloud-native applications. Being able to modify certain aspects of the application to hunt and pinpoint bugs is valuable and something you should consider adding to your applications too. For demonstration purposes, we will create a ConfigMap that allows us to modify the logging behavior of a simple HTTP API acting as the sample application.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Instrumenting .NET Apps with OpenTelemetry</title>
				<link>https://thorsten-hans.com/instrumenting-dotnet-apps-with-opentelemetry/</link>
				<pubDate>Thu, 24 Nov 2022 12:13:00 +0100</pubDate>
				<guid>https://thorsten-hans.com/instrumenting-dotnet-apps-with-opentelemetry/</guid>
				<description>&lt;p&gt;Instrumenting applications is critical to address observability in cloud-native. Receiving detailed traces, metrics, and logs in distributed application architectures is mission-critical regarding monitoring and troubleshooting.&lt;/p&gt;&#xA;&lt;p&gt;This article will look at &lt;a href=&#34;https://opentelemetry.io&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;OpenTelemetry&lt;/a&gt;&#xA; and instrument a .NET application to ensure our overall application becomes observable at runtime.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#what-is-opentelemetry&#34;&gt;What is OpenTelemetry&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#the-sample-application&#34;&gt;The sample application&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#instrumenting-a-net-application-with-opentelemetry&#34;&gt;Instrumenting a .NET Application with OpenTelemetry&lt;/a&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#provide-a-signal-resource&#34;&gt;Provide a signal resource&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#configure-tracing&#34;&gt;Configure Tracing&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#configure-logging&#34;&gt;Configure Logging&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#configure-metrics&#34;&gt;Configure Metrics&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#filtering-traces-with-custom-samplers&#34;&gt;Filtering Traces with custom Samplers&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#custom-signals-with-opentelemetry&#34;&gt;Custom signals with OpenTelemetry&lt;/a&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#custom-traces&#34;&gt;Custom Traces&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#custom-baggage&#34;&gt;Custom Baggage&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#custom-metrics&#34;&gt;Custom Metrics&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#kubernetes-deployment&#34;&gt;Kubernetes Deployment&lt;/a&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#query-traces-using-jaegerui&#34;&gt;Query traces using JaegerUI&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#query-metrics-using-prometheus-queryui&#34;&gt;Query metrics using Prometheus QueryUI&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#what-weve-covered-in-this-article&#34;&gt;What we&amp;rsquo;ve covered in this article&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#conclusion&#34;&gt;Conclusion&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr&gt;&#xA;&lt;h2 id=&#34;what-is-opentelemetry&#34;&gt;What is OpenTelemetry&lt;/h2&gt;&#xA;&lt;p&gt;Before we dive into the actual example, let&amp;rsquo;s do a quick refresher on OpenTelemetry, to ensure everybody is on track. OpenTelemetry (often referred to as OTel) is an open-source observability framework. It is a CNCF (Cloud Native Computing Foundation) project and has been on the &lt;strong&gt;incubating&lt;/strong&gt; maturity level since May the 7th of 2019. Historically, OpenTelemetry was started by combining two existing projects in the observability space &lt;a href=&#34;https://opentracing.io/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;OpenTracing&lt;/a&gt;&#xA; and &lt;a href=&#34;https://opencensus.io&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;OpenCensus&lt;/a&gt;&#xA;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Background Workers in Azure Container Apps with KEDA</title>
				<link>https://thorsten-hans.com/background-workers-in-azure-container-apps-with-keda/</link>
				<pubDate>Mon, 17 Oct 2022 13:23:33 +0000</pubDate>
				<guid>https://thorsten-hans.com/background-workers-in-azure-container-apps-with-keda/</guid>
				<description>&lt;p&gt;Azure Container Apps has quickly evolved and become one of the most popular platforms to run containerized workloads in Azure. This article will look at how to run Background Workers in Azure Container Apps leveraging built-in KEDA.&lt;/p&gt;&#xA;&lt;p&gt;Developers can use Azure Container Apps to run simple cloud-native applications leveraging popular underlying technologies like Kubernetes, Dapr, and KEDA. Before we dive into building and running a background worker in Azure Container Apps, let&amp;rsquo;s do a quick refresher on what KEDA is and what it can do for us.&lt;/p&gt;</description>
			</item>
			<item>
				<title>az containerapp up - AKA amazing inner-loop performance</title>
				<link>https://thorsten-hans.com/az-containerapp-aka-amazing-loop-performance/</link>
				<pubDate>Fri, 29 Apr 2022 16:32:22 +0200</pubDate>
				<guid>https://thorsten-hans.com/az-containerapp-aka-amazing-loop-performance/</guid>
				<description>&lt;p&gt;The Azure Container App team released a new command to simplify the deployment process. With &lt;code&gt;az containerapp up&lt;/code&gt;, you can deploy your workload to Azure Container Apps (ACA) with &lt;strong&gt;one&lt;/strong&gt; command. This article demonstrates how to use &lt;code&gt;az containerapp up&lt;/code&gt; and how you can tailor its behavior to meet your requirements.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#what-does-az-containerapp-up-actually-do&#34;&gt;What does &lt;code&gt;az containerapp up&lt;/code&gt; actually do?&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#install-the-containerapp-extension-for-azure-cli&#34;&gt;Install the containerapp extension for Azure CLI&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#all-in-one-deployment-to-azure-container-apps&#34;&gt;All-in-one deployment to Azure Container Apps&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#tailored-deployments-aka-reusing-existing-dependencies&#34;&gt;Tailored Deployments (aka reusing existing dependencies)&lt;/a&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#how-to-use-existing-azure-container-registry-with-az-containerapp-up&#34;&gt;How to use existing Azure Container Registry with &lt;code&gt;az containerapp up&lt;/code&gt;&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#how-to-use-existing-azure-log-analytics-workspace-with-az-containerapp-up&#34;&gt;How to use existing Azure Log Analytics Workspace with &lt;code&gt;az containerapp up&lt;/code&gt;&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#how-to-deploy-to-an-existing-container-app-environment-with-az-containerapp-up&#34;&gt;How to deploy to an existing Container App Environment with &lt;code&gt;az containerapp up&lt;/code&gt;&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#further-customizations&#34;&gt;Further customizations&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#my-take-on-using-az-containerapp-up-for-continuous-deployment&#34;&gt;My take on using &lt;code&gt;az containerapp up&lt;/code&gt; for continuous deployment&lt;/a&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#what-we-have-covered-today&#34;&gt;What we have covered today&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#recap&#34;&gt;Recap&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr&gt;&#xA;&lt;h2 id=&#34;what-does-az-containerapp-up-actually-do&#34;&gt;What does &lt;code&gt;az containerapp up&lt;/code&gt; actually do?&lt;/h2&gt;&#xA;&lt;p&gt;You can think of &lt;code&gt;az containerapp up&lt;/code&gt; as a meta-command that will spin up all necessary resources to take your application source and run it in ACA. Under the covers, it does the following&lt;/p&gt;</description>
			</item>
			<item>
				<title>Check if your application is running in a Docker container</title>
				<link>https://thorsten-hans.com/check-if-application-is-running-in-docker-container/</link>
				<pubDate>Thu, 21 Apr 2022 17:22:42 +0000</pubDate>
				<guid>https://thorsten-hans.com/check-if-application-is-running-in-docker-container/</guid>
				<description>&lt;p&gt;Especially when building cloud-native applications, we tend to develop applications that run in any environment. We design components, so we can run them with or without container technologies to ensure we can host the application on different application platforms. However, sometimes we may have to determine if our applications are running inside a Docker container or not. This allows us to take particular actions at runtime without adding additional environment variables or configuration values (state). Every container has a &lt;code&gt;.dockerenv&lt;/code&gt; file in the file system&amp;rsquo;s root. That said, we can quickly check for the existence of that file to determine reliably if our application runs inside a container or not. For demonstration purposes, this post shows how to determine if the application is executed in a container using Go and Rust.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Managed Identities With Azure Container Apps</title>
				<link>https://thorsten-hans.com/managed-identities-with-azure-container-apps/</link>
				<pubDate>Thu, 14 Apr 2022 13:21:20 +0000</pubDate>
				<guid>https://thorsten-hans.com/managed-identities-with-azure-container-apps/</guid>
				<description>&lt;p&gt;Yesterday (13th of April 2022), we saw a couple of new features appearing in Azure Container Apps (ACA). This article will use managed identities with Azure Container Apps, which allows us to authenticate and rely on Role-Based Access Control (RBAC) when interacting with other Azure services. Before we dive into using managed identities in Azure Container Apps, let&amp;rsquo;s do a quick refresher about managed identities to bring everyone on track.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Logging in Kubernetes with Loki and the PLG stack</title>
				<link>https://thorsten-hans.com/logging-in-kubernetes-with-loki-and-plg-stack/</link>
				<pubDate>Tue, 05 Apr 2022 13:30:00 +0000</pubDate>
				<guid>https://thorsten-hans.com/logging-in-kubernetes-with-loki-and-plg-stack/</guid>
				<description>&lt;p&gt;Observability is a huge topic in cloud-native environments. One must collect, understand, and investigate millions of logs from different sources to understand what&amp;rsquo;s happening at an application&amp;rsquo;s runtime. Log stacks - like PLG - address all those concerns and are typically composed of multiple applications with dedicated responsibilities. At the core of every log stack, a log aggregation system is responsible for indexing, storing, and exposing a query interface for log messages.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Custom health probes with Azure Container Apps</title>
				<link>https://thorsten-hans.com/custom-health-probes-with-azure-container-apps/</link>
				<pubDate>Fri, 25 Mar 2022 11:41:56 +0000</pubDate>
				<guid>https://thorsten-hans.com/custom-health-probes-with-azure-container-apps/</guid>
				<description>&lt;p&gt;In Kubernetes, individual probes like &lt;code&gt;liveness&lt;/code&gt;, &lt;code&gt;readiness&lt;/code&gt;, and &lt;code&gt;startup&lt;/code&gt; are mission-critical when deploying applications. Kubernetes uses probes to determine the health of containers in a &lt;em&gt;Pod&lt;/em&gt;. Kubernetes may restart &lt;em&gt;Pods&lt;/em&gt; because of failing probes. On top of that, Kubernetes uses probes to determine if a particular container can deal with incoming requests. Kubernetes &lt;em&gt;Services&lt;/em&gt; will route incoming requests to containers that made it to the &lt;code&gt;Ready&lt;/code&gt; state. If a readiness probe is defined on a container, that container must successfully respond to the probe invocation to become &lt;code&gt;Ready&lt;/code&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Exposing gRPC services in Azure Container Apps</title>
				<link>https://thorsten-hans.com/exposing-grpc-services-in-azure-container-apps/</link>
				<pubDate>Mon, 07 Feb 2022 11:06:35 +0000</pubDate>
				<guid>https://thorsten-hans.com/exposing-grpc-services-in-azure-container-apps/</guid>
				<description>&lt;p&gt;In my recent webinar on Azure Container Apps, an attendee asked if gRPC services could be exposed. Although I was pretty sure this was possible, I asked the attendee for some patience because I wanted to try this independently. Long story short, it&amp;rsquo;s possible. This post demonstrates how to expose gRPC services with a simple .NET 6 gRPC API and a corresponding client. We&amp;rsquo;ll also talk about a small glitch that may prevent your gRPC services hosted in Azure Container Apps from being accessible.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Automate Azure with Azure Functions and Go</title>
				<link>https://thorsten-hans.com/automate-azure-with-azure-functions-and-go/</link>
				<pubDate>Sat, 18 Dec 2021 10:52:45 +0000</pubDate>
				<guid>https://thorsten-hans.com/automate-azure-with-azure-functions-and-go/</guid>
				<description>&lt;p&gt;Automation is key to success in the cloud. In this article, we will look at how to automate recurring tasks using &lt;a href=&#34;https://pkg.go.dev/github.com/Azure/azure-sdk-for-go&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Azure SDK for Go&lt;/a&gt;&#xA; with Azure Functions. This article contributes to the &lt;a href=&#34;https://golang.christmas/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Go Advent Calendar&lt;/a&gt;&#xA;🎄. If you haven&amp;rsquo;t heard about it, you should check out all the awesome content contributed to the Go Advent Calendar and level up your Go programming skill during the holiday season.&lt;/p&gt;&#xA;&lt;p&gt;The sample code shown in this article can be found &lt;a href=&#34;https://github.com/ThorstenHans/go-advent&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;in this repository on GitHub&lt;/a&gt;&#xA;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Let&#39;s build a serverless Christmas image tagging solution with Azure Computer Vision</title>
				<link>https://thorsten-hans.com/serverless-image-tagging-with-azure-computer-vision/</link>
				<pubDate>Thu, 25 Nov 2021 15:06:37 +0000</pubDate>
				<guid>https://thorsten-hans.com/serverless-image-tagging-with-azure-computer-vision/</guid>
				<description>&lt;p&gt;By leveraging serverless capabilities provided by Azure, we can focus on actually building something instead of managing or taming the necessary infrastructure. &lt;a href=&#34;https://azure.microsoft.com/en-us/services/cognitive-services/custom-vision-service/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Azure Computer Vision&lt;/a&gt;&#xA; is one of those serverless capabilities you can use to build cool things rapidly.&lt;/p&gt;&#xA;&lt;p&gt;Christmas 🎅🏼 is around the corner! That said, it&amp;rsquo;s time to gear up and flood social media with properly tagged images. To do so, we will build a simple &lt;strong&gt;serverless solution that tags all your Christmas images automatically&lt;/strong&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Traffic split in Azure Container Apps</title>
				<link>https://thorsten-hans.com/traffic-split-in-azure-container-apps/</link>
				<pubDate>Thu, 04 Nov 2021 18:45:15 +0000</pubDate>
				<guid>https://thorsten-hans.com/traffic-split-in-azure-container-apps/</guid>
				<description>&lt;p&gt;With Azure Container Apps (ACA), Microsofts latest serverless runtime for containerized workloads in Azure, we can customize certain aspects of traffic routing on the ingress level. This article will look at traffic split and configure a relatively simple API to leverage a tailored traffic split configuration in Azure Container Apps. If you are new to Azure Container Apps, consider reading my article &lt;a href=&#34;https://www.thorsten-hans.com/introduction-to-azure-container-apps/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&amp;ldquo;Introduction to Azure Container Apps&amp;rdquo;&lt;/a&gt;&#xA; first.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-traffic-split&#34;&gt;What is traffic split&lt;/h2&gt;&#xA;&lt;p&gt;First, let&amp;rsquo;s quickly revisit what traffic split is. Traffic split is a mechanism that routes configurable percentages of incoming requests (traffic) to various downstream services. See the following picture, which shows the relation between ACA ingress controller, traffic split configuration, and downstream services (or revisions in the case of ACA):&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to deploy Azure Container Apps with Bicep</title>
				<link>https://thorsten-hans.com/how-to-deploy-azure-container-apps-with-bicep/</link>
				<pubDate>Wed, 03 Nov 2021 19:21:33 +0000</pubDate>
				<guid>https://thorsten-hans.com/how-to-deploy-azure-container-apps-with-bicep/</guid>
				<description>&lt;p&gt;Although Azure Portal and Azure CLI provide a decent experience to deploy Azure Container Apps, I prefer using Infrastructure as Code (IaC) to deploy and manage my cloud infrastructure. That said, this post guides you through the process of deploying Azure Container Apps using Bicep.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;!Note that container apps are moving namespace. In March 2022, ACA will shift from the &lt;code&gt;Microsoft.Web&lt;/code&gt; namespace to &lt;code&gt;Microsoft.Apps&lt;/code&gt;. Everything described here should still work, but you have to change the namespace!&lt;/p&gt;&#xA;&lt;/blockquote&gt;</description>
			</item>
			<item>
				<title>Introduction to Azure Container Apps</title>
				<link>https://thorsten-hans.com/introduction-to-azure-container-apps/</link>
				<pubDate>Tue, 02 Nov 2021 23:36:24 +0000</pubDate>
				<guid>https://thorsten-hans.com/introduction-to-azure-container-apps/</guid>
				<description>&lt;p&gt;During Ignite 2021, Microsoft announced the public preview of &lt;strong&gt;Azure Container Apps&lt;/strong&gt;, a fully managed serverless container runtime for building and running modern applications at scale.&lt;/p&gt;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;The announcement of &lt;a href=&#34;https://x.com/hashtag/AzureContainerApps?src=hash&amp;amp;ref_src=twsrc%5Etfw&#34;&gt;#AzureContainerApps&lt;/a&gt; was definitely my personal highlight at &lt;a href=&#34;https://x.com/hashtag/MSIgnite?src=hash&amp;amp;ref_src=twsrc%5Etfw&#34;&gt;#MSIgnite&lt;/a&gt; so far 🚀 &lt;a href=&#34;https://t.co/zbHaYotIWi&#34;&gt;pic.twitter.com/zbHaYotIWi&lt;/a&gt;&lt;/p&gt;&amp;mdash; Thorsten Hans 🦀 (@ThorstenHans) &lt;a href=&#34;https://x.com/ThorstenHans/status/1455676602948505609?ref_src=twsrc%5Etfw&#34;&gt;November 2, 2021&lt;/a&gt;&lt;/blockquote&gt;&#xA;&lt;script async src=&#34;https://platform.x.com/widgets.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt;&#xA;&#xA;&#xA;&lt;p&gt;This article gives you a brief introduction to what Azure Container Apps is, which technologies are used to provide this fantastic serverless container runtime and how you can build and run containerized workloads on Azure Container Apps&lt;/p&gt;</description>
			</item>
			<item>
				<title>Azure Functions with Go</title>
				<link>https://thorsten-hans.com/azure-functions-with-go/</link>
				<pubDate>Tue, 17 Aug 2021 13:15:14 +0000</pubDate>
				<guid>https://thorsten-hans.com/azure-functions-with-go/</guid>
				<description>&lt;p&gt;By leveraging custom handlers in Azure Functions, we can use any programming language to build serverless applications and host them in Azure.Having the freedom to use your preferred programming language to craft Azure Functions is awesome. Developers can use their existing knowledge, tools, and frameworks. The integration with the surrounding runtime is done via a thin configuration layer.&lt;/p&gt;&#xA;&lt;p&gt;For example, this post demonstrates how to build an Azure Functions project with a simple HTTP API written in Go. To keep things simple, we will use &lt;a href=&#34;https://github.com/gin-gonic/gin&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Gin, a minimalistic web framework for Go&lt;/a&gt;&#xA;.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
