Migrating .NET applications to .NET Core to Reduce Costs
Working with .NET applications, whether they be custom-built or off-the-shelf applications, comes with many benefits including the reliability of Microsoft and a large development community. However, these applications almost always must run on Windows IIS, on top of a Windows Server, which creates a dependency between your .NET applications and Windows Server licenses. Much to your advantage, however, those days are numbered. With the release of .NET Core, we have been able to build .NET applications that can be hosted on Linux-based servers eliminating these applications' dependency on Window Server licenses.
In theory, this sounds great! You can take your existing, proven .NET applications and migrate them from costly hosting environments to open-source hosting environments, eliminating the need for Windows Service licenses for hosting. This dramatically changes the ongoing hosting costs associated with those applications. Migrating your code from .NET to .NET Core is not a cut and paste adventure, and requires that your application dependencies be properly met, and that everything contained within is compatible with the .NET Core Framework.
The Benefits of Migration
Strategically speaking, .NET Core is the future of .NET development – and this is especially important with cloud-based and decoupled applications. .NET Core is designed to better facilitate Cross-Platform Deployments, Microservices Architectures, Containers, and High-performance and scalable systems[1]. This push toward interoperability will help your organization to leverage your existing .NET implementations, while using more cloud-native architectures and approaches.
Financially speaking, removing the Windows Server licensing dependency from your .NET applications as you migrate them to .NET Core will help you to immediately realize cost savings, as most open source hosting platforms do not have licensing dependencies.
Migrating your code from .NET to .NET Core is not a cut and paste adventure, and requires that your application dependencies be properly met, and that everything contained within is compatible with the .NET Core Framework.
How to Migrate: Not Just Cut and Paste
Migration of applications, along with many other components in your infrastructure, is a complex process that must consider many factors. Deployment type, deployment sizing, deployment scalability all play a key part in this process, and one of the first opportunities for cost savings is using Linux-based hosting platforms to take advantage of open-source software licenses.
The biggest part of .NET application upgrades to .NET Core upgrades has just gotten a little bit easier, at least on Amazon’s Web Services (AWS). AWS announced July 1 the availability of their Porting Assistant for .NET, which will analyze your current .NET applications, outline compatibility of the .NET Core framework for the application, and determine if the tool can help you lift and shift your application’s framework. If your application is compatible with the .NET Core framework, the Porting Assistant will walk you through upgrading your application to .NET Core, and migrate the workload to your AWS environment, for further development, testing or production (but please, do not migrate untested workloads to production – unless you are hoping to spend more time and money to fix it while it is running).[2] If your product is not ready to lift and shift directly onto AWS, the Porting Assistant will outline the current deficiencies to help you modify the application environment to complete the conversion to .NET core.
The AWS Porting Assistant for .NET is free to use and available for download now. Go ahead and test your applications compatibility now, and discover if your organization can benefit from this faster on-ramp to the cloud.
Need Help?
- Your .NET application strategy is multi-layered
- You are looking to migrate these legacy applications to the cloud
- You want the most cost efficient approach toward application decoupling and cloud migrations
- You're ready to learn how to re-architect these workflows
A first step is to reach out. Our cloud team is effectively positioned to assist you with any, or all, of your migration project.
[1] “Choose between .NET Core and .NET Framework for Server Apps.” Choose between .NET Core and .NET Framework for Server Apps | Microsoft Docs, Microsoft, 28 Apr. 2020, docs.microsoft.com/en-us/dotnet/standard/choosing-core-framework-server.
[2] Roberts, Steve. “Announcing the Porting Assistant for .NET.” AWS News Blog, Amazon Web Services, 1 July 2020, aws.amazon.com/blogs/aws/announcing-the-porting-assistant-for-net/.