Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

ASP.NET Core

Configuring ASP.NET Core Behind a Load Balancer

If you deploy your ASP.NET Core web application to the cloud you are likely putting it behind a load balancer.  Here’s some quick info that might provide useful for how to Configure ASP.NET Core behind a load balancer. Forwarded Headers There are generally 3 headers which are added to the request header to tell your application about how it was forwarded from the load balancer. X-Forwarded-For: List of comma space list of IP addresses of the original client and proxies that received the request. X-Forwarded-Proto: The scheme from the original client and proxies. X-Forwarded-Host: Original host header. SSL Termination If… Read More »Configuring ASP.NET Core Behind a Load Balancer

Zero Downtime Deployments with Octopus Deploy

If you’re using Octopus Deploy and AWS with their Elastic Load Balancer (v2) in front of EC2 instances that either self host or sit behind IIS, you can setup zero downtime deployments fairly easily. Although this blog post will focus on AWS ELB, the same strategy can be applied to Azure. Rolling Deployments First is to configure your process that deploys your web application within Octopus.  Octopus has the ability to perform the rolling deployments pattern: Rolling deployments are a pattern whereby, instead of deploying a package to all servers at once, we slowly roll out the release by deploying… Read More »Zero Downtime Deployments with Octopus Deploy

State Driven UI in ASP.NET Core MVC

In most MVC applications when rending Razor Views, I think the tendency is to use the IUrHelperl.Action inside if anchor href or form action.  If you are using ASP.NET Core, maybe you are using tag helpers like anchor tag helper.  But there’s another option I don’t see very often, which is creating the relevant routes and define them in your ViewModel within in your controller action.   This can be really useful when you’re application’s available actions are driven by state. Razor Here’s a small example of a shopping cart.  The view model has a list of products that are in your… Read More »State Driven UI in ASP.NET Core MVC