小编在上个月在微信公众号“dotnet跨平台” 做了一个针对.NET 容器化的调查:https://mp.weixin.qq.com/s/oszbuIORT0G8XLLgMZzknw,参与人数702人,由于软件定义基础设施方兴未艾,编排和自动化领域kubernetes占据了主体地位,在平时的工作中和身边的同学聊天的过程中很多人对kubernetes 有一种畏惧心理,觉得K8s很难,上周也连续写了几篇关于K8s的文章《基于Kubernetes 构建.NET Core 的技术体系》和《容器化时代我们应当选择Kubernetes》。这个调查今天也结束了,所以这里写一篇文章总结一下。

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

我的公众号里用户多是使用.NET,其中已经有不少同学转去做了Java,前端等,使用.NET core的用户83%,这个数据肯定是偏高的,但是从概率角度还是反映了一个趋势,记得2017年初我也在公众里做过类似的调查,当时的数据倒过来的,只有20%的用户在使用.NET Core, 毕竟那时候.NET Core 才发布1.1版本,还缺乏很多API,随着.NET Core 2.0的发布,.NET Core的可用API得到极大改善,很多新项目开始使用.NET Core.

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

使用docker容器化.NET Core的比例下降到了48%,这个数据相比.NET Core的使用人群比例还是超过了50%的,这是需要向大家多多推广的地方了,期望更多的同学能够把容器化技术用起来。

3. 是否使用kubernetes(k8s)

在使用k8s的比例只剩下了17%, 这个也是非常类似于2017年的.NET Core调查,相信企业会不断增加对容器技术的投资, 随着K8s的逐步成熟,最新的k8s 1.14 正式支持了Windows Server 2019作为节点, Windows服务器可以正式加入到容器化生产环境,传统的.NET也可以进行容器化。在《容器化时代我们应当选择Kubernetes》里头已经介绍了我们为什么要拥抱k8s, k8s 是我们构建微服务生态系统的基础设施,.NET Core在容器里的运行效率才是他的优势。

“大道昌昌,顺之者昌”。容器服务和Docker在企业的IT中正在扮演越来越重要的角色。降低成本和提升效率是容器服务和Docker为企业带来的核心价值,围绕着这两个核心价值,企业将在多个应用场景上加大投入,例如:应用的微服务化、运维流程的标准化、持续集成/部署的自动化、使用开发测试云降低产品研发成本、使用多个云或者混合云降低系统风险等。特别是对于创业公司来说,无论你的业务系统多么小,无论是单体还是微服务,都非常适合使用容器服务来不断降低成本,我公司所有业务都是使用腾讯云容器服务进行调度,还有我也在不断帮助周边的朋友上云,上云不是简单的虚拟机方式把传统的系统搬上云,而应当充分利用云基础设施,老的系统可以进行小改动,使用容器化技术获得系统弹性和降低运维难度,新系统更是可以按照云原生应用进行开发,可参考我写的文章《基于Kubernetes 构建.NET Core 的技术体系》,Windows 容器化还可以选择微软的Service Fabric,这也是一个牛逼的技术,具体可以参考朱永光写的Service Fabric是什么?,可惜在容器编排领域已经被k8s 占领。

一份.NET 容器化的调查小结的更多相关文章

  1. 容器化之路Docker网络核心知识小结,理清楚了吗?

    Docker网络是容器化中最难理解的一点也是整个容器化中最容易出问题又难以排查的地方,加上使用Kubernets后大部分人即使是专业运维如果没有扎实的网络知识也很难定位容器网络问题,因此这里就容器网络 ...

  2. 云原生系列5 容器化日志之EFK

    上图是EFK架构图,k8s环境下常见的日志采集方式. 日志需求 1 集中采集微服务的日志,可以根据请求id追踪到完整的日志: 2 统计请求接口的耗时,超出最长响应时间的,需要做报警,并针对性的进行调优 ...

  3. docker4dotnet #2 容器化主机

    .NET 猿自从认识了小鲸鱼,感觉功力大增.上篇<docker4dotnet #1 前世今生&世界你好>中给大家介绍了如何在Windows上面配置Docker for Window ...

  4. .NET Core容器化@Docker

    温馨提示:本文适合动手演练,效果更佳.  1. 引言 我们知道. NET Core最大的特性之一就是跨平台,而对于跨平台,似乎大家印象中就是可以在非Windows系统上部署运行.而至于如何操作,可能就 ...

  5. Asp.NetCore轻松学-使用Docker进行容器化托管

    前言 没有 docker 部署的程序是不完整的,在写了 IIS/Centos/Supervisor 3篇托管介绍文章后,终于来到了容器化部署,博客园里面有关于 docker 部署的文章比比皆是,作为硬 ...

  6. 通过 Azure Pipelines 实现持续集成之docker容器化及自动化部署

    通过 Azure Pipelines 实现持续集成之docker容器化及自动化部署 Intro Azure DevOps Pipeline 现在对于公开的项目完全免费,这对于开源项目来讲无疑是个巨大的 ...

  7. 支付宝客户端架构解析:Android 容器化框架初探

    摘要: 本文将介绍支付宝 Android 容器化框架设计的基本思路. 1. 前言 由本章节开始,我们将从支付宝客户端的架构设计方案入手,细分拆解客户端在“容器化框架设计”.“网络优化”.“性能启动优化 ...

  8. .NETCore 实现容器化Docker与私有镜像仓库管理

    原文:.NETCore 实现容器化Docker与私有镜像仓库管理 一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技 ...

  9. .NETCore Docker实现容器化与私有镜像仓库管理

    一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技术,它隔离了应用程序对基础架构(操作系统等)的依赖.相较于虚拟机而 ...

随机推荐

  1. Linux网络简介

    Linux的网络简介 1.TCP/IP协议簇  (通俗的解释就是为了网路传输指定的一种标准),它将网络划分为四层:应用层 .传输层.互联层 .网络接口层 . 基础层是网络接口层(说白了就是把帧格式的数 ...

  2. 深入Spring Boot:那些注入不了的Spring占位符(${}表达式)

    Spring里的占位符 spring里的占位符通常表现的形式是: <bean id="dataSource" destroy-method="close" ...

  3. Android 不规则封闭区域填充 手指秒变油漆桶

    转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/45954255: 本文出自:[张鸿洋的博客] 一.概述 在上一篇的叙述中,我们通 ...

  4. Python不同目录间模块调用

    #!/usr/bin/python # -*- coding: utf-8 -*- # 导入其它目录下的文件, 需要去帮获取当前程序的绝对路径并加入到环境变量的相对路径中 import os impo ...

  5. Dubbo中集群Cluster,负载均衡,容错,路由解析

    Dubbo中的Cluster可以将多个服务提供方伪装成一个提供方,具体也就是将Directory中的多个Invoker伪装成一个Invoker,在伪装的过程中包含了容错的处理,负载均衡的处理和路由的处 ...

  6. 【BZOJ 5222】[Lydsy2017省队十连测]怪题

    题目大意: 传送门 给一个长度为$n(n<=200)$的数列$h$,再给$m$个可以无限使用的操作,第$i$个操作为给长度为花费$c_i$的价值给长度为$l_i$的数列子序列+1或-1,求将数列 ...

  7. C++ bitset用法

    概念: bitset是用来存储位的(其中的元素只有两种形式) 这个类通常用来模拟一个布尔数组,但对空间分配上进行了优化:通常,每个元素只占用一个bit ,而通常char类型是它的八倍 每个位置上的位都 ...

  8. 记一次重大生产事故,在那 0.1s 我想辞职不干了!

    一.发生了什么? 1.那是一个阳光明媚的下午,老婆和她的闺蜜正在美丽的湖边公园闲逛(我是拎包拍照的). 2.突然接到甲方运营小妹的微信:有个顾客线上付款了,但是没有到账,后台卡在微信支付成功(正常状态 ...

  9. samba 基本配置及自定义控制

    Samba简介: Samba实现的是Linux和Windows之间的一种共享,为两种不同的操作系统架起了一座桥梁,使Linux系统和Windows系统之间能够实现互相通信,共享文件系统.打印机及其他资 ...

  10. SpringBoot进阶教程(二十八)整合Redis事物

    Redis默认情况下,事务支持被禁用,必须通过设置setEnableTransactionSupport(true)为使用中的每个redistplate显式启用.这样做会强制将当前重新连接绑定到触发m ...