27

一份关于.NET Core云原生采用情况调查 - 张善友

 4 years ago
source link: https://www.cnblogs.com/shanyou/p/11266491.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

一份关于.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开发

image

我的公众号里用户多是使用.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

image

使用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 采用情况

image

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

4.采用 Kubernetes 的障碍

image

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

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

image

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

6.遇到问题时向谁求助

image

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

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


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK