微服务是否一定要docker容器化?如果是?原因是什么?优缺点都有哪些?

当前微服务拆分导致服务越来越多,如果用虚机感觉占用资源太多,存在资源浪费,那是不是一定要容器化? 容器化后优缺点都有哪些?希望实践过的同仁们分享一下经验。

2回答

gxcornflakesgxcornflakes  信息技术经理 , 某金融单位
挚爱咖啡michael1983yinxin等赞同了此回答
1、资源成本:轻量级容器资源利用率更高,容器成本相对较低2、管理成本:m个微服务n个实例,可能需要m * n个虚机,虚机服务器管理成本较高(当然一个虚机可能部署多个实例),而容器直接在物理机上运行,可直接通过云管平台管理,管理复杂度较低。微服务化程度越高,容器技术的管理成本越低。3...显示全部

1、资源成本:轻量级容器资源利用率更高,容器成本相对较低
2、管理成本:m个微服务n个实例,可能需要m * n个虚机,虚机服务器管理成本较高(当然一个虚机可能部署多个实例),而容器直接在物理机上运行,可直接通过云管平台管理,管理复杂度较低。微服务化程度越高,容器技术的管理成本越低。
3、应用部署成本:容器一般通过镜像(OS+发布包)进行部署,一键发布(集成云管或者Jenkins),部署快效率高;而虚机通过在OS上部署发布包进行部署,虽然可以通过自动化(Ansible)等手段发布,但总体上没有容器技术高效便捷。
4、扩缩容效率:在服务器资源充足的情况下,容器技术可分钟级扩容,而虚机则由于技术、流程问题可能需要小时级甚至几天时间,所以容器技术更加快速便捷。

收起
 2019-07-06
浏览1375
aixchina 邀答
尘世随缘尘世随缘  技术总监 , 上海某互联网金融公司
yinxin赞同了此回答
简单说docker和虚拟机都是一个概念,在服务化的场景下docker比虚拟机强的原因其实也很简单,举个例子,明天需要做一个非常大的影响活动,初步估算下每种核心节点服务需要增加10台集群,目前核心服务有12个,即12*10=120台,需要扩容120台机器。虚拟机做法:开通120个虚拟机,配置环境,设置I...显示全部

简单说docker和虚拟机都是一个概念,在服务化的场景下docker比虚拟机强的原因其实也很简单,举个例子,明天需要做一个非常大的影响活动,初步估算下每种核心节点服务需要增加10台集群,目前核心服务有12个,即12*10=120台,需要扩容120台机器。
虚拟机做法:开通120个虚拟机,配置环境,设置IP,端口,安装应用,启动,调试。按一个熟手没部署一台需要10分钟,那么累计需要1200分钟,约20个小时
docker做法:由于在部署的时候,每个应用都被做成了一个镜像,所以要发布这120个应用,只需要通过脚本或者命令即可,整个过程约1个小时内完成。
所以在服务数量不是很多的情况下,用虚机也是能符合要求的。

收起
 2019-07-05
浏览1326

提问者

simba83524软件开发工程师, 中原银行

容器云管理平台选型优先顺序调查

发表您的选型观点,参与即得50金币。

问题状态

  • 发布时间:2019-07-04
  • 关注会员:3 人
  • 问题浏览:2286
  • 最近回答:2019-07-06