技术雷达:Docker能用于生产环境了,机器学习还远着呢!

IT圈从来都是热闹的,各种新技术总是层出不穷。但是,不管这些技术如何热,作为企业或者开发者都要审慎地看待他们,这些技术的发展目前到底处于什么阶段?能否能够应用于生产环境?

在最近一期的ThoughtWorks技术雷达的看点中:开源软件已经进入良性循环;Docker可以应用于生产环境;PaaS的定义仍然模糊不清,很多PaaS方法仍然不完整或者受到不成熟的框架和工具的影响;而机器学习还远着呢!

据了解,ThoughtWorks技术雷达是一份不限制行业,技术中立的前瞻性技术报告,小到一个工具和类库,大到平台或者架构,技术雷达都会关注其技术发展趋势。

技术雷达通过图形化方式将各种技术归类为技术、工具、平台、语言和框架四个象限,并按照采用、试验、评估以及暂缓四项指标对这些技术的发展阶段进行划分。其中,采用阶段,雷达强烈主张采用这个阶段的技术;对于试验阶段的技术,雷达认为这个阶段的技术值得追求,并且主张企业重要的是理解如何建立这种能力,企业可以在那些风险可控的项目中尝试该项技术;评估阶段的技术,雷达建议企业只需要对其如何影响企业做一番探究;暂缓阶段的技术,雷达建议要谨慎推行。

开源软件进入良性循环

在技术雷达中,有些最具影响力的软件来自哪些并不以创建软件工具为初衷的公司,比如facebook,它并不是传统的软件开发工具创造者,却贡献了很多雷达条目。与以往不同,如今越来越多的公司将其重要的软件资源开源,以吸引应聘者和实现自身价值。这就创建了一个良性的反馈环:创新的开源产品吸引了优秀的开发者,这些开发者反过来贡献了更多的创新理念。而作为副产品,这些公司的框架和库成为业务最流行的产物。这表明,软件开发生态系统正在发生巨变,并且进一步证明了开源软件的力量。

另一方面,ThoughtWorks CTO徐昊表示,开源已经成为很多企业的特殊选项变成默认选项,企业在选择软件交付技术时会优先考虑开源技术,而企业唯一需要关注的是开源的协议是否与企业自身兼容,从这方面看,已经证明开源软件比绝大部分商用软件更高效。

PaaS的定义仍然模糊不清

“技术雷达是从实践者的角度观察一项技术的成熟度和实用性。例如,Cloudfoudry已经推出了很长时间,但是它的部署还是比较麻烦的,另外,Cloudfoudry和其他PaaS一样,如果将它跟研发流程对接的话,还是会出现很多问题解决起来很麻烦,因此,我们依然认为Cloudfoudry属于试验阶段。”徐昊介绍道。

事实上,按照技术雷达给出的评定,PaaS的定义仍然模糊不清,很多PaaS方法仍然不完整或者受到不成熟的框架和工具的影响,例如使用自定义的服务定位器(Service Locator)或复杂的网络拓扑,让原本在IaaS上很容易的事情变得复杂,并且大家也还在讨论容易能否在拥有更多灵活性的前提下提供类似的服务。

徐昊认为,PaaS带来最大的好处是业务,即在软件开发过程中,有大量的周围环境是确定的,可以以平台化的方式封装在一个云平台内,这时诸如环境部署、扩展性等精力都释放出来,开发人员只需要和核心业务逻辑相关的,将更多的精力用于解决业务问题,最大限度提升软件交付中的直接业务价值,这也是精益开发、敏捷开发所提倡的,对于企业投资者来说,所需要获取的也是更高的开发效率和交付速度。

企业向PaaS迁移会带来很多好处,但是同样也面临许多困难和挑战,特别是在整体流水线设计和工具使用方面。技术使用者要避免在实施具体PaaS时的耦合问题。

Docker可用于生产环境

容器技术,特别是Docker,已经被证实是一种有效的应用管理技术,它方便了不同环境的应用程序部署,解决了“在这里正常工作,但在别的环境下不行”的问题。目前,Docker的应用已经从开发/测试环境进入到生产环境,并且被许多PaaS平台作为其”伸缩单元“和”数据中心OS“平台。

而开发团队之所以喜爱Docker,是因为Docker的镜像格式更容易实现开发和生产环境之间的对等,让部署更加可靠;而作为自包含服务的打包机制,它与应用程序的微服务架构简直是天作之合。在运维方面,Docker对监控工具、编排工具以及kubernetes、Marathon等,以及自动化部署工具的支持反映了平时的日益成熟,做好了用于生产环境的准备。

而随着分布式集群环境下部署容器的需求场景越来越多,Kubernetes作为解决此类问题的容器集群管理框架也被技术雷达评定为试验阶段,这也为Docker提供了管理基础。当然,技术雷达同时也指出,虽然Docker被普遍认为是“轻量级的虚拟化”技术,但是并不推荐将其作为安全进程的隔离机制。

机器学习还太早了

除了以上几项分享,徐昊在接受记者采访时表示:“机器学习在传统企业应用场景中还太早了,现有的机器学习的应用都是个案,还不能满足某一类应用的需要,机器学习是否产生明确的价值还不清楚。因此,机器学习还不能进入到技术雷达的四个象限中。”

相对于机器学习的遥遥无期,徐昊认为VR已经拥有明确的应用场景。在美国澳大利亚等国家和地区,很多企业都接受员工一周有两天在家办公的,如果更多的公司接受员工在家办公,这种方式就会成为主流,那么VR在这方面场景中的应用就是VR视频会议,建立远程办公中体验的存在感。

原文发布时间为:2016年05月10日 

本文作者:作者:赵东

本文来自合作伙伴至顶网,了解相关信息可以关注至顶网。

时间: 2024-12-03 12:00:33

技术雷达:Docker能用于生产环境了,机器学习还远着呢!的相关文章

Docker Workflow(一):一个可用于生产环境的Docker工作流

本文讲的是Docker Workflow(一):一个可用于生产环境的Docker工作流,[编者的话]作者工作于墨西哥IIIEPE研究院,他将通过一系列文章,为我们逐一讲述他们在Docker实际应用过程中的经验与教训,给后来者提供一些参考.本文主要介绍了他基于Docker的开发工作流,包括GitLab.Jenkins.Registry.Nginx. Docker现在已经两岁了(译者注:Docker于2013年3月13日首次发布),IIIEPE已经在生产环境中使用Docker3个来月.在此,我分享一

GlassfishV3用于生产环境的多不多?

问题描述 GlassfishV3用于生产环境的多不多? 解决方案 GlassFish 很好很强大,也听朋友说过他们公司有用在生产环境的.但是GlassFish3很新了吧,公司用的很少是比较新的东东,淘宝的jboss几乎全部是4.2的,7都出来了,没人提起解决方案二: 我们都是用的weblogic,客户有钱

【Spark Summit EU 2016】经验分享:将SparkR用于生产环境下的数据科学应用中

本讲义出自Heiko Korndorf在Spark Summit EU 2016上的演讲,主要分享了R语言以及现实场景下使用R语言进行数据分析的应用案例,并且将引领大家使用SparkR扩展R语言应用,并介绍了SparkR1.X和2.X架构,并介绍了这两个版本的SparkR分别如何获取. 除此之外,Heiko Korndorf还分享了如何使用SparkR将数据科学与数据工程集成到一起,将SparkR用于生产环境下的数据科学应用中,并对于Spark无限发展空间的生态系统进行了展望.

在生产环境中使用Apache Mesos和Docker

本文讲的是在生产环境中使用Apache Mesos和Docker,[编者的话]本文翻译自 IVO VERBERK博客,Docker容器软件已受到了从科技巨头到企业的广泛注意.但是,随着容器概念转变成为现实世界中的成熟技术,那么问题就变成了:怎么样才能快速把Docker应用于生产环境中呢? 介绍 在生产环境中安全有效地的运行Docker容器会有很多复杂的挑战.许多复杂性挑战都是在跨多主机间运行容器产生的.这些跨主机的容器可能需要保持或共享状态,也可能需要相互通信,还可能会随时消失.为了高容错性和可

三个生产环境中使用Docker的案例

本文讲的是三个生产环境中使用Docker的案例[编者的话]本文为2017年初Docker线下见面会的记录,Solita.Zalando和Pipedrive公司做了Docker化经验分享,并对生产环境中使用Docker的细节进行讨论.本文还推荐了一些Docker生产环境中常使用的优秀工具. [3 天烧脑式 Docker 训练营 | 上海站]随着Docker技术被越来越多的人所认可,其应用的范围也越来越广泛.本次培训我们理论结合实践,从Docker应该场景.持续部署与交付.如何提升测试效率.存储.网

生产环境中使用Docker Swarm的一些建议

本文讲的是生产环境中使用Docker Swarm的一些建议[编者的话]实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes,Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它们之中,Swarm是Docker原生的,同时也是最简单,最易学,最节省资源的,至少值得我们多了解一下.本文将介绍一些非常实用的建议. [深圳站|3天烧脑式Kubernetes训练营]培训内容包括:Kubernetes概述.架构.日志和监控,部

DockerCon 2016 Day2 : 企业生产环境可用

DockerCon 第二天,一早现场就非常火爆.由于西雅图的天气从早到晚没啥变化,再加上时差的问题,不得不靠咖啡来提神. 好在上午大会有几个让人非常兴奋的消息公布:Docker在企业生产环境就绪,Docker支持Windows就绪.Docker的新能力支持,虽然大部分在意料之中,但是实在感叹其速度之快. 中午,在Community Theater,一边喝啤酒一边听来自阿里的分享"阿里云的容器实践",很多老外对阿里巴巴的电商和专有云场景比较关心. 下午,听了TechCrunch和eWee

《构建高可用Linux服务器 第3版》—— 3.6 生产环境下的Shell脚本分类

3.6 生产环境下的Shell脚本分类 生产环境下的Shell脚本作用还是挺多的,这里根据3.1节所介绍的日常工作中Shell脚本的作用,将生产环境下的Shell脚本分为备份类.监控类.统计类.开发类和自动化类.前面3类从字面意义上看比较容易理解,后面的我稍微解释一下:开发类脚本是用Shell来配合PHP做一些非系统类的管理工作,比如SVN的发布程序等:而自动化类脚本则利用Shell自动来替我们做一些繁琐的工作,比如自动生成及分配密码给开发组的用户或自动安装LNMP环境等.下面我会就这些分类举一

详解将ASP.NET Core应用程序部署至生产环境中(CentOS7)_实用技巧

将ASP.NET Core应用程序部署至生产环境中(CentOS7) 阅读目录 环境说明 准备你的ASP.NET Core应用程序 安装CentOS7 安装.NET Core SDK for CentOS7. 部署ASP.NET Core应用程序 配置Nginx 配置守护服务(Supervisor) 这段时间在使用Rabbit RPC重构公司的一套系统(微信相关),而最近相关检验(逻辑测试.压力测试)已经完成,接近部署至线上生产环境从而捣鼓了ASP.NET Core应用程序在CentOS上的部署