Azure Functions 4.0: The Road to .NET 6

Azure Functions 4.0 brings first-class .NET 6 support and the **Isolated Process Model** (out-of-process), which decouples your app from the Functions runtime version. In-Process vs Isolated Feature In-Process Isolated (Recommended) .NET Version Dependency Tied to Host Independent Middleware Limited Full ASP.NET Core Middleware Startup Performance Faster Slightly Slower (but improves) Creating Isolated Function Key Takeaways […]

Read more →

Securing Microservices: mTLS in Kubernetes

Zero Trust mandates that internal traffic be encrypted and authenticated. **mTLS (mutual TLS)** achieves this by requiring both client and server to present certificates. In Kubernetes, Service Meshes like Istio automate this entirely. How Istio Handles mTLS Enabling Strict Mode Key Takeaways Certificate rotation is automatic (usually 24 hours). Use AuthorizationPolicies to control which services […]

Read more →

.NET 6 RC1: Final Features

.NET 6 RC1 (Release Candidate) is “Go Live,” meaning Microsoft supports it in production. This is the feature-complete preview. Final release is November 2021. Key Highlights **Hot Reload** for all project types (Console, WPF, Web). **Minimal APIs** reach maturity with OpenAPI/Swagger integration. **MAUI** reaches RC alongside (separate release). **DateOnly / TimeOnly** types for database scenarios. […]

Read more →

C# 10 Record Structs: Optimization

C# 9 Records were reference types (classes). C# 10 introduces `record struct`, bringing immutability features to value types, eliminating heap allocations for small DTOs. Syntax Performance Benefit Since it’s a struct, `Point` lives on the stack. No GC pressure for creating thousands of them in a loop. Key Takeaways Use `readonly record struct` for small, […]

Read more →

Docker Init Process: The Zombie Reaper

If your container spawns child processes (e.g., shell scripts), those children can become zombies when terminated. Docker defaults to PID 1 being your app, but PID 1 in Linux has special responsibilities—reaping orphaned children. Your app probably doesn’t do that. The Solution: `tini` Or simpler with Docker’s built-in: Key Takeaways Zombies consume PIDs. Too many […]

Read more →

Managing Terraform State in Azure

Terraform’s `.tfstate` file is gold. If it’s lost or corrupted, Terraform cannot track what resources exist. You **must** store state remotely with locking. Azure Backend Configuration State Locking Azure Blob’s native lease mechanism prevents concurrent writes. Key Takeaways Never commit `.tfstate` to Git. Enable **soft delete** on the storage account to recover corrupted state. Use […]

Read more →