闲话 .NET(4):为什么要跨平台?

image

前言

.NET Core 有一个关键词就是跨平台,为什么要跨平台呢?Windows 操作系统不香吗?今天我们来聊聊这个

原因一:安全考虑

Windows OS 是闭源的,而 Linux 是开源的,因此有些公司的技术负责人就认为 Linux 比 Windows OS 更安全,比如我以前教《现代操作系统》课程的老师就非常推崇 Linux,对 Windows OS 则是嗤之以鼻,斥之为 "伪操作系统 "。姑且不论这种认知是否客观,但是这种固有认知是很难被改变的,所以作为程序猿的我们只能去适应这种认知,特别是在近几年,政企项目开始要求 “国产化”,也就是数据库、操作系统等都使用国产的产品,而国产操作系统大部分都是基于 Linux 的,因此在 Linux 下运行系统的需求非常迫切。

原因二:成本

Windows 是收费的,而很多 Linux 发行版都是开源、免费的,对于服务器数量很多的系统,其操作系统的成本是一个不得不考虑的因素。

原因三:生态

由于 Linux 是开源的,因此吸引了大批开发人员为 Linux 开发软件,比如 Apache、Nginx、MySQL、Kafka、Redis、Docker 等,数不胜数。虽然这些软件大部分也移植到了 Windows 下,但是这些毕竟是优先为 Linux 开发的软件,它们在 Windows 下的版本只能说是 “可以运行” 而已,其性能和功能与 Linux 版本的比起来都有一定的差距。并不是说基于 Windows 平台开发不出同样优秀的软件,而是说很少有人愿意优先基于 Windows 开发服务器端软件。这就导致了比较优秀的服务器端软件生态环境大多在 Linux 下。

原因四:稳定性

由于 Linux 特有的设计,Linux 在运行时,相对 Windows OS 会稳定很多,网上曾经有公开数据说 Linux 可以几个月不关机,同时非常稳定的持续计算,速度丝毫不减慢,非常的稳定,Windows OS 就很难做到这一点。

结语

Java 因为开源和能够跨平台而受到大厂们的生睐,在国内发展得非常快,如今 .NET 也积极拥抱开源,并且武装上了 “跨平台” 和 “基于云开发” 这对翅膀,.NET 在成长,在变化,在褪去外壳,迎接新生,一句话,.NET 未来可期

我是老杨,一个奋斗在一线的资深研发老鸟,让我们一起聊聊技术,聊聊人生。

都看到这了,求个点赞、关注、在看三连呗,感谢支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/13708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何将老板的游戏机接入阿里云自建K8S跑大模型(下)- 安装nvidia/gpu-operator支持GPU在容器中共享

文章目录 安装nvidia/gpu-operator支持GPU在容器中共享 安装nvidia/gpu-operator支持GPU在容器中共享 安装 nvidia/gpu-operator遇到两个问题: 由于我们都懂的某个原因,导致某些镜像一直现在不成功。 解决办法,准备一个🪜&#…

车间人员作业行为智能检测 AI视觉在生产车间制造中的应用

车间人员作业行为智能检测系统基于神经网络人工智能视觉算法,车间人员作业行为智能检测通过对车间监控摄像头获取的视频图像进行分析和识别,实现了对人员操作行为的智能检测。系统对工人的操作环节进行分解,根据时间、动作标准等方面制定了规…

MemoryDB 2024 论文分享

论文地址点这里。 TL;DR MemoryDB 通过底层依赖 AWS 内部系统 Multi-AZ Transaction Log 实现了 11 个 9 的持久性保证。 通过依赖 Transaction Log 的 Condition API 和租约机制来实现了一致性和可用性保证。 通过周期性调度 Off-box 节点来外部 Rewrite binlog 避免了内存…

Linux技术分享:Linux设置软链接

简介 软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个不同的链接,类似于windows的快捷方式。作用 当我们需要在不同的目录,使用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件…

C语言基础——循环(2)+关机程序

欢迎点赞支持 个人主页:励志不掉头发的内向程序员; 专栏主页:C语言基础; 文章目录 目录 前言 一、for循环的补充 二、循环的嵌套 1、嵌套的介绍 1.1 练习: 题目解析: 优化: 三、goto语句 1、go…

3DEXPERIENCE DELMIA Role: RFP - Fabrication Robot Programmer

Discipline: Robotics Role: RFP - Fabrication Robot Programmer 在虚拟工厂中定义、验证和编程机器人弧焊和密封剂沉积系统 模拟和验证完整的焊接、密封剂沉积和搬运机器人系统,以消除代价高昂的碰撞并优化生产率提供精确的生产就绪型机器人程序,同…

Day 38 防火墙技术IPtables

一:防火墙简介 1.简介 ​ iptables其实并不是真正的防火墙,我们可以把他理解为一个客户端的代理,用户是通过iptables这个代理,将用户的安全设定执行到对应的“安全框架”中,这个“安全框架”才是真正的防火墙。这个框…

mac安装Redis

官网: https://redis.io中文网: Redis中文网 安装 brew install redis 查看版本 redis-server --version 开启关闭服务 方式一(不推荐) 这种方式不太建议,因为控制台不用输出相应的日志 开启服务 brew service…

K8S认证|CKA题库+答案| 1. 权限控制RBAC

1、权限控制RBAC 您必须在以下Cluster/Node上完成此考题: Cluster Master node Worker node k8s master …

园区网的基本了解

园区网使用的典型技术---IEEE802.3标准/IEEE802.11标准 封闭式园区网络 ---由内部人员使用,不能访问互联网。 ---制订各式各样的规章制度 ---NAC,网络接入控制 开放式园区网络 ---服务于公众的,认证 园区网的发展 第一代:…

神经网络模型结构和参数可视化

神经网络模型结构和参数可视化 一、前言二、Netron2.1Netron简介2.2TensorFlow、Keras、Caffe模型文件实测结果2.3PyTorch、scikit-learn模型文件实测结果 三、NN-SVG四、Netscope五、PlotNeuralNet六、Graphviz七、总结参考文档 一、前言 在神经网络的某些应用场景中&#xf…

.NET快速实现网页数据抓取

网页数据抓取需求 本文我们以抓取博客园10天推荐排行榜第一页的文章标题、文章简介和文章地址为示例,并把抓取下来的数据保存到对应的txt文本中。 请求地址:https://www.cnblogs.com/aggsite/topdiggs 创建控制台应用 创建名为DotnetSpiderExercise的控…

Java通用三级菜单工具类

Java通用三级菜单工具类 通常在写三级菜单时会使用递归方式去写,但是时间长了会发现很多重复的代码一直在写,改,也就改几个名字。 实现方式 抽象属性结构 常用的三个字段,子级id、父级id、其次是数组children。 将返回对象或…

【Spring security】【pig】Note01-pig登录验证过程

🌸🌸 pig 登录验证 🌸🌸 pig后端源码 一、大概执行顺序,便于理解 pig spring-security 二、配置过滤器 配置SecurityFilterChain 三、执行过程分析 请求拦截: 当客户端发送请求时,Sprin…

Nginx反向代理与负载均衡:让网站像海豚一样灵活

引言:"当网站遇上海豚:Nginx让数据流动更流畅!"想象一下,你的网站是一片繁忙的海域,而Nginx就像一群聪明的海豚,它们不仅能够迅速地找到最佳的捕食路线(反向代理)&#xf…

下载ubantu镜像,windows怎么复制文本到虚拟机 ubantu

目录 下载ubantu镜像 安装ubantu 开启共享剪贴板 允许root用户登录 下载ubantu镜像

Kubernetes——Pod详解

目录 一、Pod基础概念 1.概念 2.使用方式 3.Pause容器 3.1网络 3.2存储 4.Pod容器分类 4.1自主式Pod 4.2控制器管理的Pod 二、Pod的分类 1.基础容器(infrastructure container) 2.初始化容器(initcontainers) 2.1Ini…

如何找到免费的jupyter平台

第一步:在fofa找到大量的jupyter平台,部分平台会存在未授权漏洞,我们可以通过访问这个url查看是否可以使用(如何使用fofa请查看其它博文)。 第二步:使用python脚本快速访问下载后的目的url,测试…

CR80清洁卡都能用在什么地方?

CR80清洁卡(也被称为ISO 7810 ID-1清洁卡)的规格确实使其在各种需要读取磁条或接触式智能卡的设备中都有广泛的用途。这些设备包括但不限于: ATM自动终端机:当ATM机的磁条读卡器出现故障或读卡不灵敏时,可以使用CR80清…

Python 渗透测试:MySQL 数据库 弱密码测试.(3306 端口)

什么是 MySQL 数据库 MySQL 是一种开源的关系型数据库管理系统(RDBMS)。它是目前世界上最流行的数据库之一,被广泛应用于各种类型的网站和应用程序中。MySQL 数据库爆破是一种非法和危险的黑客攻击手段。它指的是通过暴力猜测密码的方式,试图获取未授权访问 MySQL 数据库的行为…