个人认为docker的最大的优势在与,服务搭建极大的减少了N多配置,就可以运行服务,另外由于体积小,又能隔离空间,可以快速的部署,发布,弹性伸缩,提高了服务器的利用率。但是在有些方面对于企业级来讲,并不使用而且还很坑

1,负载均衡

2,缓存服务器

3,数据缓存层

4,数据层

5,基础服务(git,jenkins等)

为什么,因为这些个服务,不存在docker 适用的场景,这写服务或者说是系统层级,一旦构建好,基本上万年不变,首先不存在各种变更,即使变更,也是很小的的改动,无非就是reload一下,

再说说数据层,docker虽然可以进行挂在数据卷轴,但是经本人测试,数据是可以共享,但是性能差的要死,而且在扩展的时候,还很麻烦,需要重头开始定制,比如用了alpine,那么从一开始就要安装好错有自己要用的软件,后期再安装,就等于,重新打镜像,然后再次部署,然后再挂在数据卷,费劲不费劲,如果用centos 构建镜像,那么大小直接上百M,光是传输就是浪费时间,明明一道shell命令解决的问题,为什么一定要这么麻烦?!退一步讲,即使刚才说问题全部解决了,写好多脚本 程序,一键部署,试问,你是要把多个功能不同的镜像放在一台机器上吗?你要是开发,来完成一成套的功能,没什么可能说的,毕竟公有云那么贵,省钱么,但是企业级呢?部署原则是直接要从物理机上就要隔离了,不然数据磁盘,维护起来累死你,什么?随便移植?移植意味着要停机,意味着业务要停,为什么要无缝迁移,就是在不干扰业务正常运行的状态下,完成任务,这是基本原则!

所以,docker 真正的试用的是那么应用层的服务,承载着高并发,高访问的业务,低峰的时候缩减业务,仅此一块而已


转载于:https://blog.51cto.com/wks97/1952674