从.net开发做到云原生运维(一)——从.net framework过渡到.net core

  • A+
所属分类:.NET技术
摘要

序篇讲了自己的一些感悟和经历,从这章开始就开始讲一些.net技术栈的东西了。


1. 前言

序篇讲了自己的一些感悟和经历,从这章开始就开始讲一些.net技术栈的东西了。

2. .net framework和.net core对比

.NET Framework 概述

.NET Framework 是一种技术,支持生成和运行 Windows 应用及 Web 服务。 NET Framework 旨在实现下列目标:
提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Web 上分布,或者是在远程执行。提供可执行以下操作的代码执行环境:将软件部署和版本控制冲突最小化。
提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性。
消除脚本环境或解释环境的性能问题。
使开发人员的经验在面对类型大不相同的应用(如基于Windows 的应用和基于 Web 的应用)时保持一致。
按照工业标准生成所有通信,确保基于 .NET Framework 的代码可与任何其他代码集成。

.NET 简介 .Net Core (后期以.net 6.0为准了)

.NET 是一种用于构建多种应用的免费开源开发平台,例如:

使用类库在不同应用和应用类型中共享功能。
使用 .NET 时,无论你正在构建哪种类型的应用,代码和项目文件看起来都一样。 可以访问每个应用的相同运行时、API 和语言功能。

跨平台

开源

注意

.Net Framework 最高版本为4.8(目前只处于维护的状态没有新特性了) .Net Core最高版本为3.1,从5.0开始,.Net Core就命名成.Net + 数字,以后只有一个.Net。最新的长期支持版本为.net 6.0。

从.net开发做到云原生运维(一)——从.net framework过渡到.net core

Announcing .NET 6 — The Fastest .NET Yet

3. 为什么推荐迁移到.net core

.Net Core的一些优点

  • 跨平台

  • 开源

.Net Framework只能在Windows系统上运行是有很大的局限性。 最新的.Net跨平台框架拥有很多的新特性,Asp.net core更能适应云原生和微服务。而且开源并持续更新,保证能够快速的添加一些新特性。

4. 旧程序享受容器化带来的便利

当然如果一些web程序有历史包袱,不能很好的迁移到.net最新的跨平台框架上,可以采用windows容器,将传统应用固化到容器里,这样就可以享受到容器带来的一些便利了。再结合容器编排如k8s这类工具,搭建出windows和linux的混合集群,这样服务和现代化的微服务没什么区别了。