一份关于.NET Core云原生采用情况调查
调查背景
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云原生采用情况调查的更多相关文章
- .NET 在云原生时代的蜕变,让我在云时代脱颖而出
.NET 生态系统是一个不断变化的生态圈,我相信它正在朝着一个伟大的方向发展.有了开源和跨平台这两个关键优先事项,我们就可以放心了.云原生对应用运行时的不同需求,说明一个.NET Core 在云原生时 ...
- 【转】.NET 在云原生时代的蜕变,让我在云时代脱颖而出
原创:张善友 原文:https://www.cnblogs.com/shanyou/p/12198741.html .NET 生态系统是一个不断变化的生态圈,我相信它正在朝着一个伟大的方向发展.有了开 ...
- 公有云上构建云原生 AI 平台的探索与实践 - GOTC 技术论坛分享回顾
7 月 9 日,GOTC 2021 全球开源技术峰会上海站与 WAIC 世界人工智能大会共同举办,峰会聚焦 AI 与云原生两大以开源驱动的前沿技术领域,邀请国家级研究机构与顶级互联网公司的一线技术专家 ...
- 乘风破浪,.Net Core遇见Dapr,为云原生而生的分布式应用运行时
Dapr是一个由微软主导的云原生开源项目,国内云计算巨头阿里云也积极参与其中,2019年10月首次发布,到今年2月正式发布V1.0版本.在不到一年半的时间内,github star数达到了1.2万,超 ...
- 从CLR GC到CoreCLR GC看.NET Core对云原生的支持
内存分配概要 前段时间在园子里看到有人提到了GC学习的重要性,很赞同他的观点.充分了解GC可以帮助我们更好的认识.NET的设计以及为何在云原生开发中.NET Core会占有更大的优势,这也是一个程序员 ...
- 云原生ASP.NET Core程序的可监测性和可观察性
分布式应用程序很复杂,给开发人员调试和修复生产问题带来了一系列挑战.尽管微服务架构可帮助维持一支规模较小,可以自主工作并专注于独立业务团队,但由于其分布式性质,它带来了新的挑战.例如,在业务交易过程中 ...
- 比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”
随着移动互联网.电子商务的高速发展,被使用最多的企业级开源数据系统MySQL面临着巨大挑战——为迎接“双11"的高并发要提前做好分库分表;用户不断激增要将读写分离才能应对每天上亿次的访问,但 ...
- 进击的 Java ,云原生时代的蜕变
作者| 易立 阿里云资深技术专家 导读:云原生时代的来临,与Java 开发者到底有什么联系?有人说,云原生压根不是为了 Java 存在的.然而,本文的作者却认为云原生时代,Java 依然可以胜任&qu ...
- 进击的.NET 在云原生时代的蜕变
你一定看过这篇文章 <进击的 Java ,云原生时代的蜕变>, 本篇文章的灵感来自于这篇文章.明天就将正式发布.NET Core 3.0, 所以写下这篇文章让大家全面认识.NET Cor ...
随机推荐
- Spring Cloud Stream整合RabbitMQ
简介 Spring Cloud Stream是一个构建消息驱动微服务的框架,应用程序通过input(相当于consumer).output(相当于producer)来与Spring Cloud Str ...
- 深入V8引擎-AST(1)
没办法了,开坑吧,接下来的几篇会讲述JavaScript字符串源码在v8中转换成AST(抽象语法树)的过程. JS代码在V8的解析只有简单的几步,其中第一步就是将源字符串转换为抽象语法树,非常类似于v ...
- 视频技术详解:RTMP H5 直播流技术解析
本文聚焦 RTMP 协议的最精华的内容,接进行实际操作 Buffer 的练习和协议的学习. RTMP 是什么 RTMP 全称即是 Real-Time Messaging Protocol.顾名思义就是 ...
- iOS App开发的那些事儿2:如何搭建合适的框架
<iOS App开发的那些事儿>系列文章从更宏观的角度出发,不仅仅局限于具体某个功能.界面的实现,而是结合网易云信iOS端研发负责人多年的经验,从如何优化现有代码的角度出发,深度分析如何创 ...
- 关于Jvm类加载机制,这一篇就够了
前言 一个月没更新了,这个月发生了太多的事情,导致更新的频率大大降低,不管怎样收拾心情,技术的研究不能落下! jvm作为每个java程序猿必须了解的知识,博主推荐一本书<深入理解Java虚拟机& ...
- visudo 与 /etc/sudoers
增加多个用户免密码登录 User_Alias USER_OPS = zouyi,hanerhui,shibeibei,gaoxudong,xiaoyuelin,wangsongfeng,sunjian ...
- Net Core 2.1 日志记录框架NLog+Mysql配置
NLog是什么? 这里还是简单介绍一下吧,为了让小白也知道.NLog是一个灵活的免费日志记录平台,适用于各种.NET平台,包括.NET Core.NLog可以通过简单地配置就可以可以很方便的写入多个日 ...
- HDU 5616:Jam's balance(背包DP)
http://acm.hdu.edu.cn/showproblem.php?pid=5616 题意:有n个物品,每个重量为w[i],有一个天平,你可以把物品放在天平的左边或者右边,接下来m个询问,问是 ...
- ajax 的简单请求,get的加法运算,post加法运算,用户登录认证
视图函数部分 from django.shortcuts import render, HttpResponse import time from app01.models import User i ...
- 18.linux基础优化
1.linux系统的基础优化 (1)关闭selinux sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 临时关闭 ...