0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

人工智能和机器学习为DevOps带来了新的自动化功能

如意 来源:企业网D1Net 作者:Eran Kinsbruner 2020-10-16 14:31 次阅读

人工智能机器学习为DevOps带来了新的自动化功能,为此需要对这些技术如何优化组织运营的示例进行了解。

DevOps工程旨在加速软件开发流程,从而在不影响代码质量的情况下更快地为客户提供价值。

在过去的十年中,传统的DevOps已经有了长足的进步,现在允许许多组织实施持续集成(CI)/持续部署(CD)管道。但是,在大多数情况下,组织仍然依靠人工流程和人工驱动的自动化流程的组合,并没有进行优化。

人工智能和机器学习在DevOps的应用

在DevOps领域也见证了人工智能和机器学习技术的兴起。这些工具正在成为融合到传统DevOps工具堆栈中的有力候选者。从决策流程改进到自动化操作和代码质量增强,在人工智能和机器学习的帮助下,DevOps的未来发展充满希望。以下是七个值得关注的趋势和变化:

(1)代码审查实现自动化

在软件开发的早期阶段,从编码本身开始,人工智能和机器学习工具就已经能够基于思想数据集(机器学习和响应的机器学习算法的输入)执行自动代码审查和代码分析。这些有助于减少人类的参与。

此外,使用代码管理和协作工具,用户可以自动将审查的工作量分散到团队成员中。其最终的结果是能够更早地检测到代码缺陷、安全问题和与代码相关的缺陷,这些缺陷都是这些算法能够轻松发现的。这些工具还可以减少代码审查中的噪声。除了检测缺陷之外,自动代码审查还强制执行编码和安全标准。

(2)代码分析工具实现自动化

由人工智能和机器学习支持的智能工具(例如代码分析和改进)可以从数百万行代码的存储库中学习。然后,这些工具可以了解代码的意图,并记录开发人员所做的更改。在那里,这些智能工具可以为他们分析的每一行代码提供建议。

还有一些开发人员则采用不同的方法来分析代码。在分析了来自开源项目的数百万条代码之后,由机器学习工具提供支持的代码着重于性能,并帮助找到可能导致重大损失的代码行,这些代码会损害应用程序的响应时间。这些工具可以在代码中发现问题,例如资源泄漏、潜在的并发竞争条件以及浪费的CPU周期,并且它们还可以在代码审查阶段和应用程序性能监视阶段与持续集成(CI)/持续部署(CD)管道集成。

在同一类别下,对新功能进行编码后,开发人员开始研究由人工智能和机器学习驱动的自动化单元测试创建。这可以为开发人员节省大约20%的时间。

(3)自我修复测试

构建后验收和集成编码的下一个阶段是功能和非功能测试。在这里,使用人工智能和机器学习进行代码创建以及自我修复测试代码和维护在DevOps领域已成为现实。

测试自动化可能是一个巨大的瓶颈,并且通常是项目延迟的原因。不可靠的自动化会影响测试过程。而测试自动化不可靠的根本原因之一是测试中的应用程序和测试中使用的元素的不断更改。智能技术可以帮助识别这些变化并调整测试,使其更加稳定可靠。

(4)低代码/无代码工具

此外,创建健壮的测试代码的技能的成本很昂贵,而且并非总是可用,特别是对于移动应用和Web等数字应用程序而言。在这里,通过学习应用程序流程、屏幕和元素,人工智能和机器学习测试工具可以自动生成测试,而几乎不需要代码。这些工具可以在每次测试运行之间自我修复。

低代码或无代码工具允许更多的团队成员参与测试自动化创建活动。它们还为开发者腾出时间专注于更重要紧迫的活动,例如创建新功能。

(5)机器人流程自动化

机器人过程自动化(RPA)是使用人工智能和机器学习进行测试的自动化的另一层。这样的技术可以用于自动化大型组织中的大量采用人工、耗时、易出错,以及难以自动化的流程。

(6)测试影响分析工具

在测试执行完成后,人工智能和机器学习测试影响分析(TIA)工具将处于适当位置,可以指导决策者将哪些测试继续进行到下一个版本,哪些领域不涉及其他内容。在相同的测试类别下,人工智能和机器学习算法可以根据思想测试数据确定故障的根本原因,并节省大量的平均解决时间(MTTR)。

(7) AIOps

在DevOps流程的后期,在将代码部署到生产之前和之后,人工智能和机器学习引领了AIOps中的新兴技术。良好的AIOps解决方案不仅涵盖智能应用程序性能监视(APM),而且还利用了IT基础设施管理(ITIM)和IT服务管理(ITSM)。这些共同构成了生产和运营洞察力分析的综合层,可以在大数据上运行,并且可以针对先进的现代软件架构(微服务和云平台等)运行。

借助基于人工智能的操作功能,组织团队可以专注于确定其应用程序的服务运行状况,并获得对其生产数据的控制和可视性。这样,DevOps团队可以使用实时自动事件管理来加快其平均解决时间(MTTR)。在这里,人工智能和机器学习在生产中的应用程序内的日志可观察性、趋势和预测等方面可以做更多的工作。

使用AIOps产品组合中的此类工具,团队可以减少并经常防止服务停机(预测性警报)。他们还可以加快支持故障解决的速度,更快地分析大型日志文件,并找出根本原因和类别(安全性、网络、服务器等)。

结语

尽管DevOps和人类工程学永远不会消失,但它们肯定可以使用一些帮助来优化和加速那些难以自动化和维护的单调、易出错的活动。

人工智能和机器学习是应对这些挑战的绝佳解决方案,并且通过对每个组织的问题进行适当的分析,决策者可以从这些工具中获得巨大价值。而只有在将这些解决方案与现有流程和工具无缝集成的情况下,才能获得成功。如果人工智能和机器学习无法轻松地集成到标准DevOps工具堆栈中,则项目将无法实现价值,并最终恢复到传统的软件开发实践。
责编AJX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动化
    +关注

    关注

    29

    文章

    5518

    浏览量

    79111
  • 人工智能
    +关注

    关注

    1791

    文章

    46872

    浏览量

    237606
  • 机器学习
    +关注

    关注

    66

    文章

    8378

    浏览量

    132425
收藏 人收藏

    评论

    相关推荐

    嵌入式和人工智能究竟是什么关系?

    嵌入式和人工智能究竟是什么关系? 嵌入式系统是一种特殊的系统,它通常被嵌入到其他设备或机器中,以实现特定功能。嵌入式系统具有非常强的适应性和灵活性,能够根据用户需求进行定制设计。它
    发表于 11-14 16:39

    人工智能机器学习和深度学习存在什么区别

    人工智能指的是在某种程度上显示出类似人类智能的设备。AI有很多技术,但其中一个很大的子集是机器学习——让算法从数据中学习
    发表于 10-24 17:22 2447次阅读
    <b class='flag-5'>人工智能</b>、<b class='flag-5'>机器</b><b class='flag-5'>学习</b>和深度<b class='flag-5'>学习</b>存在什么区别

    《AI for Science:人工智能驱动科学创新》第6章人AI与能源科学读后感

    、优化等方面的应用有了更清晰的认识。特别是书中提到的基于大数据和机器学习的能源管理系统,通过实时监测和分析能源数据,实现了能源的高效利用和智能化管理。 其次,第6章通过多个案例展示了人工智能
    发表于 10-14 09:27

    《AI for Science:人工智能驱动科学创新》第一章人工智能驱动的科学创新学习心得

    人工智能:科学研究的加速器 第一章清晰地阐述了人工智能作为科学研究工具的强大功能。通过机器学习、深度
    发表于 10-14 09:12

    risc-v在人工智能图像处理应用前景分析

    RISC-V和Arm内核及其定制的机器学习和浮点运算单元,用于处理复杂的人工智能图像处理任务。 四、未来发展趋势 随着人工智能技术的不断发展和普及,RISC-V在
    发表于 09-28 11:00

    名单公布!【书籍评测活动NO.44】AI for Science:人工智能驱动科学创新

    芯片设计的自动化水平、优化半导体制造和封测的工艺和水平、寻找新一代半导体材料等方面提供帮助。 第6章介绍了人工智能在化石能源科学研究、可再生能源科学研究、能源转型三个方面的落地应用。 第7章从环境监测
    发表于 09-09 13:54

    FPGA在人工智能中的应用有哪些?

    定制的硬件设计,提高了硬件的灵活性和适应性。 综上所述,FPGA在人工智能领域的应用前景广阔,不仅可以用于深度学习的加速和云计算的加速,还可以针对特定应用场景进行定制计算,为
    发表于 07-29 17:05

    机器视觉和人工智能的关系与应用

    释视觉信息的技术。它涉及到图像的获取、处理、分析和解释,以实现对物体、场景和事件的识别、定位、测量和分类。机器视觉系统通常由图像采集设备、图像处理软件和执行器组成,可以应用于各种自动化智能化的场景。
    的头像 发表于 07-16 10:27 788次阅读

    人工智能机器学习和深度学习是什么

    在科技日新月异的今天,人工智能(Artificial Intelligence, AI)、机器学习(Machine Learning, ML)和深度学习(Deep Learning,
    的头像 发表于 07-03 18:22 1117次阅读

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V2)

    ://t.elecfans.com/v/27221.html *附件:初学者完整学习流程实现手写数字识别案例_V2-20240506.pdf 人工智能 语音对话机器人案例 26分03秒 https
    发表于 05-10 16:46

    机器学习怎么进入人工智能

    人工智能(Artificial Intelligence,AI)是一门涉及计算机、工程、数学、哲学和认知科学等多个领域的交叉学科,旨在构建智能化计算机系统,使之能够自主感知、理解、学习和决策。如今
    的头像 发表于 04-04 08:41 266次阅读

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V1)

    *附件:初学者完整学习流程实现手写数字识别案例.pdf 人工智能 语音对话机器人案例 26分03秒 https://t.elecfans.com/v/27185.html *附件:语音对话
    发表于 04-01 10:40

    嵌入式人工智能的就业方向有哪些?

    联网ARM开发 NB-IoT开发及实战 七:python工程师,人工智能工程师 python语法基础 python核心编程 基于OpenCV的机器视觉开发 嵌入式人工智能渗入生活的方方面面,广泛应用
    发表于 02-26 10:17

    ABB收购研发工程公司 进一步增强人工智能及软件驱动自动化

    ABB集团机器人与离散自动化事业部总裁安世铭表示:“人工智能驱动的机器人和自动化能够推动行业变革,在关键的全球趋势和劳动力挑战中
    的头像 发表于 01-30 16:10 492次阅读

    ABB收购Meshmind增强人工智能及软件驱动自动化

    ABB的最新投资将加速提升软件工程和基于人工智能的应用程序(包括机器学习和视觉)的研发能力。
    的头像 发表于 01-19 14:24 1006次阅读