Microsoft Open Sourced .NET的真正原因

Devops,MicroServices以及容器和轻量级计算环境的转变解释了关于Microsoft在.NET上的位置,开源和Nano服务器的位置。

Windows服务器下载更新安装
Shutterstock.

微软的工程师参与了超过2000个开源项目,你不得不承认,开源在微软已经不仅仅是一个立足点了。例如,最近,出于一个非常实际的原因,浏览器团队开发了Chakra JavaScript引擎,使Edge和Internet Explorer都开源。

节点,流行的JavaScript运行时,目前仅适用于Google的V8 JavaScript引擎。使用Chakra现在开源,Microsoft可以拍摄它创建的节点的叉子,以在Chakra上运行并将其贡献回项目 - 这意味着使用节点的开发人员可以选择使用Edge以及Chrome,打开up a much bigger market for Microsoft’s browser technology.

企业如何要做开发的转变对.NET和ASP.NET的开放采购探讨了很多。部分,它是为了让社区参与 - 利用拥抱开源项目的开发人员的想法和专业知识。像雾溪和Xamarin这样的软件公司已经编写了自己的.NET编译器已经替换了Microsoft的开源Roslyn .NET编译器。

微软也希望将这些技术引入Linux,这在很大程度上是因为Azure。运行云平台让微软对Linux产生了兴趣,这远远超出了Windows Server团队对Linux内核所做的开源贡献,以便发行版能够在Hyper-V管理程序上运行。截至2015年9月,超过20%的运行在Azure IaaS上的虚拟机是Linux,微软甚至说服了Red Hat支持Azure(除了AWS)和CloudForms云管理平台。

Windows Server首席架构师Jeffery Snover说:“当我们在任何地方追求我们的架构和云的愿景时,支持Linux工作负载和支持Windows工作负载同样重要。”

“在我们的组织中,每个团队现在都有Linux团队,”Snover说。“我们历史上有了Windows Server中的小组,为Hyper-V进行Linux支持,他们在那里做了很棒的进展;我们在技术预览4中有很棒的网络支持4.“已经有一个Linux版本的PowerShell所需的状态配置工具,可以更轻松地使用相同的工具管理Windows Server和Linux。

[相关:科技巨头如何传播开源编程爱情]

“也是如此,”Snover说,“.NET团队正在拍摄.NET并在Linux上提供它。”

这适合像Verizon的FIOS团队一样,它使用Linux集群使用Mesos部署的Docker容器,运行.NET和ASP.NET 5.微软希望将Verizon保留为客户,以至少为其开发平台,这是有道理的而不仅仅是他们可以像Visual Studio那样卖掉它们的工具。将来,当Windows Server 2016为Docker,容器和更轻的Numo Server选项带来支持时,微软希望赢回它们;即使是在Linux上,它们也更有可能。

斯诺弗表示,像Verizon这样的客户向微软提出希望。net在容器中运行的理由,不是因为他们想转移到Linux本身,这给Windows Server留下了一个明确的机会。

Snover说:“当你考虑这个问题时,真正激励他们的是对真正轻量级计算环境的渴望,以及能够非常、非常敏捷地站立、重新启动和扩展的能力。”这是他们无法用完整的Windows Server栈和完整的。net栈实现的。多亏了Nano服务器和我们的容器工作,他们现在可以通过Windows服务器做到这一点。”

搬到微服务

. net本身也在发生变化,最近开源版本(由. net Core 5和ASP. net演变而来)的名称也发生了变化。NET 5到。NET Core 1.0和asp.net。NET Core 1.0),强调。NET Core覆盖的内容不如完整的。NET 4.6框架那么多(例如,它没有服务器端图形库)。ASP也是如此。NET 4.6和5(有Web API,但还不支持SignalR, VB或f#)。更新的版本并不能完全取代当前的版本,尽管他们会在未来得到缺失的部分。它们还以一种新的方式构建,具有更快的发布,并且更强调向前推进,而不是避免破坏更改。

这是你在微软中看到的同样的转变。在过去十年中,建筑Azure已经教授了很多关于微服务的优势,否则是大型单片应用。原始服务前端管理资源,如Compute,Storage,Networking和Core Infrastructure组件 - 用于整个全球服务 - 在一个应用程序中。它是一个大而复杂的代码库,在单个数据中心运行,它需要一个月才能释放更新 - 完成并测试后 - 这意味着它只是每季度更新一次2020欧洲杯预赛。此外,所有不同组件的管理工具由单个证书固定。

[相关:最近大型科技公司开放的10种产品]

重写成大约25个不同的微服务可以更容易地开发、测试和发布新功能。新特性可以“飞”到一个测试系统,看看它们的表现如何,发布更新不超过三天……即使管理计算、存储和网络的资源提供商现在运行在各个数据中心。这提高了性能,因为当澳大利亚Azure数据中心使用的计算由运行在该数据中心而不是德克萨斯州的资源提供商管理时,延迟要少得多。2020欧洲杯预赛将计算和数据放在一起不仅更快,更容易扩展;它使事情更加可靠,因为您不再依赖数据中心之间的网络进行管理。2020欧洲杯预赛限制每个微服务在其自己的区域内运行也提高了安全性。

这些都是设计良好的微服务架构通常具有的优势,微软正试图通过Azure Service Fabric为企业提供一种简单的方式来使用它们。这是一个基于。net的微服务平台(运行在物理或虚拟机集群上),它从2003年开始以Windows Fabric的形式构建。Azure SQL Database是第一个基于它的服务;现在Azure Document DB、Event Hubs、Cortana、Intune、Power BI、Skype for Business、Azure IoT Suite和Azure核心基础设施中的所有虚拟机都是使用Service Fabric构建的。

在将来,服务面料还将支持Linux,Docker或Java。Service Fabric is available on Azure today, and you’ll be able to run it on your own servers (or hosted on other cloud providers), as part of the Azure Stack technical preview (which should be a finished product by the end of 2016).

像Verizon这样的公司可能会领先于曲线,但对于旨在利用云技术,容器,微服务和更快的新应用,更灵活的开发将成为关键的新应用。“每个人都在同一件事之后,”微软的Snover说。“他们希望能够开发他们的应用程序尽可能小,资源高效。和小的敏捷,安全,快速。“

这篇题为“微软开放。net的真正原因”的文章最初是由首席信息官

加入网络世界社区足球竞猜app软件脸谱网linkedin对自己最关心的话题发表评论。
相关:

版权所有©2016.足球竞彩网下载

SD-WAN买家指南:向供应商(和您自己)提出的关键问题