Microservices: Picking the .NET Framework for your containerized applications.
The objective of this blog post is to explain the factors that should be considered when picking a framework for a .net application that you intend to deploy in containerized fashion.
.Net Core
Generally, .Net Core is the preferred option when building applications that were intended to be deployed in containers due to the fact that .Net Core is built using modular architecture (.net core app images contains only the dependencies it requires to run). .NET Core apps are packaged using Windows Nano Server which is a far smaller compared to the OS required by the standard .NET runtime (Windows Server Core) therefore producing lighter images (end product of building containerized application).
On the image above, you will see an image built for .Net Core app that prompts "Hello World". Please take note of the size of the image (251 MB) as it would be critical to demonstrating the difference of the two frameworks.
Download Demo Apps from GITHUBWhen to pick .NET Core?
-
Building Polyglots
Polyglots are applications built using different platforms (EG. Combination of Java and .Net processes in a SOA app). Basically, .Net Core can be used to build applications that run on both Linux and Windows.
-
Your application's architecture is Microservices
Containers are perfect for deploying Microservices because they allow the complete isolation of services. This basically enables the use of different platforms and dependencies per service without the nasty side-effects of hosting this applications together.
-
You intend to save on hardware cost
Images built using .NET Core have small footprints (RAM and Storage) which enables us to host different containers inside a VM or Physical machine.
-
You need fast app start up
Since .NET Core apps ship with things it only depends on, application can quickly startup.
-
You intend to build Green-Field applications
.NET core is the most advised framework to be used for building green-field applications (Fresh Projects). Since it is designed for the future of .NET development.
-
You intend to build high density and scalable applications.
Since containerized applications are easy to scale using container orchestrators like Docker Swarm, Kubernetes, DC OS and Mesosphere; .NET core is the perfect framework
.Net Framework
.Net Framework is the preferred option when you intend to containerize an existing application or utilize things that deeply depend on Windows API. It is always advised to pick .NET Core over .NET framework because of the Huge image that .NET framework images produces. NOTE: Huge image size corresponds to higher cost of hosting in cloud based docker image repositories. It also means larger cost for compute power to run the containerized app.
On the image above, you will see an image built for .Net Framework app that prompts "Hello World". It is quite noticeable that this image is way larger (10.4GB) than the image built using .Net Core.
When to pick .NET Framework over .Net Core?
-
Migrate an application that is difficult to port in .Net Core
If migrating an application from .NET Framework to .Net Core is associated with high risk over produced value, it is highly suggested to keep the existing app and host it on containers.
-
Your application depends on a binary that doesn't have a .Net Core counterpart.
Since .NET Core is still young and hot, there are still binaries that don't have a .NET core counterpart. A perfect example of this is proprietary or internal frameworks of companies.
-
Usage of .Net technologies not available for .Net Core
As of November 2017, ASP.net Web Forms, WCF services and Workflow related services are still not supported.
Related Articles
- Microservices: Why choose Containers over Virtual Machines.
- Microservices: Issues Associated with RDBMS and Strong Data Consistency
Good, Keep up the good Work, Very Informative Content,
ReplyDeleteThanks For Sharing.
Java Training in Chennai
Java Course in Chennai
Great Post with valuable information. I am glad that I have visited this site. Share more updates.
ReplyDeleteSpoken English Classes in Anna Nagar
Spoken English Classes in Medavakkam
Spoken English Classes in Chennai
Good post!! valuable post...keep updating
ReplyDeleteGerman Language Classes Chennai
German Language Course in Bangalore
Amazing blog...keep sharing
ReplyDeleteIELTS Training in Chennai
IELTS Classes in Chennai
IELTS Coaching in Chennai
IELTS Coaching centre in Chennai
Excellent post. I was checking continuously this blog and I’m impressed! Very helpful information particularly the last part :) I care for such information much. I was seeking this particular info for a very long time. Thank you and best of luck. บาคาร่าออนไลน์
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteAwesome blog. Thanks for sharing such a worthy information...
ReplyDeleteSalesforce training in bangalore
Salesforce course in bangalore
ReplyDeleteHey friend, it is very well written article, thank you for the valuable and useful information you provide in this post. Keep up the good work! FYI, please check these depression, stress and anxiety related articles.
How to Build a Portfolio with ETFs, My vision for India in 2047 postcard, Essay on Unsung Heroes of Freedom Struggle
ประโยชน์ ของการ เล่นพนันนอนไลน์ เป็นหนทางสร้างอาชีพเสริมที่ง่ายรวมทั้งทำเงินได้จริง อย่างที่พวกเราได้บอกไปแล้วว่าการเล่นพนันออนไลน์บนเว็บไซต์นั้น pg slot สามารถเป็นวิถีทางหารายได้เสริม
ReplyDeleteThis comment has been removed by the author.
ReplyDeletePg slot, easy to play, get real money and not get cheated. Must be here. https://www.pgslot168game.com/ because not through middlemen or agents, don't worry about being cheated and there are many good quality games to choose from, and there are many rewards within the game, whether mine major, supermega and jackpot is broken. Easily from this camp in one place, guaranteed by many players.
ReplyDeleteในตอนนี้แบรนด์ Clubred666 ได้มีค่าย สล็อตเว็บตรง ทั้งหมดได้นำมาให้ผู้เล่นหรือลูกค้ามือใหม่ได้ร่วมสนุกกับตัวเกมส์แล้ว เพราะทาง Clubred666 อยากให้ลูกค้ามือใหม่และลูกค้าที่เป็นขาเป็นจำได้สนุกกับตัวเกมส์ที่ทางเว็ป PG Slot
ReplyDelete