调查背景

Kubernetes 越来越多地在生产环境中使用,围绕 Kubernetes 的整个生态系统在不断演进,新的工具和解决方案也在持续发布。云原生计算的发展驱动着各个企业转向遵循云原生原则(启动速度快、内存占用低)的平台, .NET Core正是在云原生背景下发展起来的平台,.NET Core的启动速度快,内存占用很低,反而Java平台在云原生时代大大的落后了。这也是可以给很多人解释为什么.NET Core 平台下没有Spring Cloud这样的框架。微软完全是面向未来的设计系统,使用kubernetes 和 service fabric来协调服务,在这两个框架之下Spring Cloud这样的框架已经毫无意义。由于软件定义基础设施方兴未艾,编排和自动化领域kubernetes占据了主体地位,在平时的工作中和身边的同学聊天的过程中很多人对kubernetes 有一种畏惧心理,所以7月份我在微信公众号“dotnet跨平台” 进行了一项关于.NET Core云原生采用情况的调查,参与人数741,这个调查今天也结束了,所以这里写一篇文章总结一下。

调查结果
1. 是否使用.NET Core开发

我的公众号里用户多是使用.NET,使用.NET core的用户69%,还有31%的开发者没有把.NET Core投入生产,从概率角度还是反映了一个趋势,记得2017年初我也在公众里做过类似的调查,当时的数据倒过来的,只有20%的用户在使用.NET Core, 毕竟那时候.NET Core 才发布1.1版本,还缺乏很多API,随着.NET Core 2.1的发布,.NET Core的可用API得到极大改善,很多新项目开始使用.NET Core,现在.NET Core 3.0 Preview7 也已经go live,可以投入生产。

2. 是否使用docker 容器化.NET Core

使用docker容器化.NET Core的比例下降到了53%,这个数据相比.NET Core的使用人群比例还是超过了50%的,这是需要向大家多多推广的地方了,期望更多的同学能够把容器化技术用起来,.NET Core对容器非常友好,特别是.NET Core 3.0在docker 运行环境上有着更好的改进,.NET Core的容器化也是.NET Core有优势的地方,我经常在微信群里给大家介绍.NET Core容器化的优势,特别是对于Java来说,如果公司里同时有Java团队,大家都跑在docker上,这个优势领导一定看得见。

3.Kubernetes 采用情况

60%的受访者使用 Kubernetes 进行容器编排,基本上kubernetes的专业调查数据相验证,这个数字是使用 Docker Swarm 的两倍,Service Fabric的使用也有11%,相信到明年,Kubernetes 将可以全面用于生产环境中的工作负载。 在使用kubernetes的方式上更多人选择了自建k8s集群,略多于使用云托管的k8s

4.采用 Kubernetes 的障碍

Kubernetes 这项技术还很年轻,围绕它的生态系统也还在形成过程中。Kubernetes 的功能和生态中的多种工具正在逐步演化,但步调却不一致。因此,团队在评估和运行 Kubernetes 的时候遇到了不同程度的问题。一些痛点包括:内部团队对通用技术的统一认识(22%), 内部缺少专家资源(42%),在关键任务中保证可靠性(14%),复杂策略的管理(21%)。

5.采用 Kubernetes 时需要哪些帮助

对于这个问题,45% 的受访者的回答是“架构设计”。架构设计确实对很多团队都造成了困扰,因为对于架构设计有很多要考虑的地方:评估物理和软件基础设施,如何集成新技术,如何以新的方式运维等。31% 的受访者表示在 Kubernetes 的日常管理上需要帮助。排名第三的回答是“部署” ,仅占 24%

6.遇到问题时向谁求助

团队寻求建议的信息源差不多,主要包括编排工具供应商(11%),独立咨询公司(6%),业内同行(28%)和相关论坛(50%)。仅有 6% 的受访者在部署 Kubernetes 的时候不需要帮助。这个结果表明,组织在寻求所需帮助时存在一定的问题。我已经在使用.NET Core + kubernetes这条道路上探索了大半年时间,积累了很多经验,你们需要帮助时欢迎找我,我公司可以提供相关各方面的咨询服务。

如果你正在考虑 Kubernetes 或在评估/部署过程中,可以从已经在使用 Kubernetes 的人那里得到有用的建议。使用云原生技术(包括 Kubernetes)很难,但对于那些优先考虑软件开发并希望缩短开发周期,更好地利用资源以及获得最佳开源技术的团队来说,显然是值得的。特别是使用.NET技术的团队,转向.NET Core这艘大船时,kubernetes 一定是最好的舵手, .NET Core 针对云原生开发的重新定义,免费开源跨平台,性能接近C++。

一份关于.NET Core云原生采用情况调查的更多相关文章

  1. .NET 在云原生时代的蜕变,让我在云时代脱颖而出

    .NET 生态系统是一个不断变化的生态圈,我相信它正在朝着一个伟大的方向发展.有了开源和跨平台这两个关键优先事项,我们就可以放心了.云原生对应用运行时的不同需求,说明一个.NET Core 在云原生时 ...

  2. 【转】.NET 在云原生时代的蜕变,让我在云时代脱颖而出

    原创:张善友 原文:https://www.cnblogs.com/shanyou/p/12198741.html .NET 生态系统是一个不断变化的生态圈,我相信它正在朝着一个伟大的方向发展.有了开 ...

  3. 公有云上构建云原生 AI 平台的探索与实践 - GOTC 技术论坛分享回顾

    7 月 9 日,GOTC 2021 全球开源技术峰会上海站与 WAIC 世界人工智能大会共同举办,峰会聚焦 AI 与云原生两大以开源驱动的前沿技术领域,邀请国家级研究机构与顶级互联网公司的一线技术专家 ...

  4. 乘风破浪,.Net Core遇见Dapr,为云原生而生的分布式应用运行时

    Dapr是一个由微软主导的云原生开源项目,国内云计算巨头阿里云也积极参与其中,2019年10月首次发布,到今年2月正式发布V1.0版本.在不到一年半的时间内,github star数达到了1.2万,超 ...

  5. 从CLR GC到CoreCLR GC看.NET Core对云原生的支持

    内存分配概要 前段时间在园子里看到有人提到了GC学习的重要性,很赞同他的观点.充分了解GC可以帮助我们更好的认识.NET的设计以及为何在云原生开发中.NET Core会占有更大的优势,这也是一个程序员 ...

  6. 云原生ASP.NET Core程序的可监测性和可观察性

    分布式应用程序很复杂,给开发人员调试和修复生产问题带来了一系列挑战.尽管微服务架构可帮助维持一支规模较小,可以自主工作并专注于独立业务团队,但由于其分布式性质,它带来了新的挑战.例如,在业务交易过程中 ...

  7. 比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”

    随着移动互联网.电子商务的高速发展,被使用最多的企业级开源数据系统MySQL面临着巨大挑战——为迎接“双11"的高并发要提前做好分库分表;用户不断激增要将读写分离才能应对每天上亿次的访问,但 ...

  8. 进击的 Java ,云原生时代的蜕变

    作者| 易立 阿里云资深技术专家 导读:云原生时代的来临,与Java 开发者到底有什么联系?有人说,云原生压根不是为了 Java 存在的.然而,本文的作者却认为云原生时代,Java 依然可以胜任&qu ...

  9. 进击的.NET 在云原生时代的蜕变

    你一定看过这篇文章 <进击的 Java ,云原生时代的蜕变>,  本篇文章的灵感来自于这篇文章.明天就将正式发布.NET Core 3.0, 所以写下这篇文章让大家全面认识.NET Cor ...

随机推荐

  1. Spark —— 高可用集群搭建

    一.集群规划 这里搭建一个3节点的Spark集群,其中三台主机上均部署Worker服务.同时为了保证高可用,除了在hadoop001上部署主Master服务外,还在hadoop002和hadoop00 ...

  2. pc微信浏览器打开页面显示空白,其他浏览器正常

    pc微信浏览器不兼容es6的语法糖.

  3. 关于AI本质的思考

    前言 最近几天和一位朋友探讨了一下现阶段的人工智能以及未来发展,并且仔细重读了尤瓦尔赫拉利的“简史三部曲”,产生了一些关于AI的新想法,觉得有必要整理出来. 程序.AI的本质 现代的计算机都是基于图灵 ...

  4. mysql批量update操作时出现锁表

    https://www.cnblogs.com/wodebudong/articles/7976474.html 最近遇到一件锁表的情况,发现更新的语句where检索的字段,没有建索引,且是批量操作的 ...

  5. js避坑历险记

    代码改变世界,世界改变码农,码农改变代码! 我就是我,我就是一个码农的武林. 前方JS巨坑出没,请注意集中力! 巨坑1:js精度问题 前段时间去一家物流公司面试,做了一个js题,印象尤为深刻: var ...

  6. MySQL数据库修改字段的长度

    数据库版本:5.7.22 使用DDL语句:alter table 表名 modify 字段名 字符类型(长度) 例如: alter table db2.admin modify password );

  7. Netty源码分析-- 处理客户端接入请求(八)

    这一节我们来一起看下,一个客户端接入进来是什么情况.首先我们根据之前的分析,先启动服务端,然后打一个断点. 这个断点打在哪里呢?就是NioEventLoop上的select方法上. 然后我们启动一个客 ...

  8. 简单的 自动生成 二维码 PHP 方法

    方法一:<style type="text/css">.eweima{    width:200px; height:200px; margin:auto;}</ ...

  9. 2018.8.17 2018暑假集训 关于dp的一些感想(以目前的知识水平)

    学了这么长时间的dp似乎还是不怎么样 谨以此篇文字记录一年以来与dp斗智斗勇的各种经历 关于dp(也就是动态规划)似乎对于每个OIer来说都是一个永远的噩梦. 刚刚开始学dp的时候完全搞不明白(只是觉 ...

  10. 快速搭建 Windows Kubernetes

    背景 接上一篇 Windows 应用容器 后,想要快速且便利的部署与管理它们,可以借助容器编排工具.对于 Windows 容器,在今天 Service Fabric 会是个更为成熟的选择,在业界有更多 ...