作业即代码:助力DevOps开发,快速交付软件

2017-06-09 09:36:00 作者:BMC公司大中华区总经理 陈明华 分类 : 比特网

  随着敏捷开发和DevOps(开发运维一体化)的流行,自动化部署成为软件企业的关键能力,决定了企业的生产力水平。在DevOps流程中,自动化可以节省时间、节约资源、减少错误,并确保一致性。尽管如此,开发人员经常无视这样的领先工作流程自动化和作业调度解决方案的存在,而是依赖一些简单的工具编写代码构建应用。由于工具不尽相同,开发人员也并未遵守相同的标准,交付给运维团队的应用常常无法满足生产标准,一旦哪里出了岔子,往往很难发现和解决问题。

  由于业务应用处理中的大部分操作由作业调度功能来执行,作业调度自动化不仅在开发、测试和部署的过程中节省时间,还可以让开发人员将时间专注于构建最好的业务逻辑上。

  以应用的组成为例:Java®和Python®等代码实现业务逻辑,应用程序在Linux®服务器、Web应用服务器或网络等基础设施上运行,数据库和SQL语句创建表、重构索引,最后,许多相关的作业和任务不得不按某种特定的顺序来执行。这种作业调度仅仅确定了作业何时运行、作业在调度失败或无法开始时该如何处理。如果开发人员花大量的时间来定义这种实际上是管理性质的功能,不仅浪费了自己的开发时间,还给运维团队带来了后续难题,浪费更多时间。

  “作业即代码”(Jobs-as-Code)是实现作业调度标准化和自动化的一种方法,它使用简单的符号来嵌入代码,通过API调用调度引擎,然后像管理Java或Python代码的方式那样,在整个交付过程中管理这些调用。

  下面介绍一下作业即代码如何适应简化的开发流程:

  作业不等于业务逻辑

  作业调度仅仅是工具,为它编写脚本需要在构建、测试和支持等流程方面投入大量精力,出现错误和不一致的情况会殃及运维团队。相反,作业调度器具有管理流程关系、进行成功/失败分析、捕获输出等功能,它可以在单个应用以及跨应用中确保一致性,从而为开发团队和运维团队节省时间,消除难题。

  及早测试并经常测试

  如今,源代码的语法在创建时就受到检查。类似的方法也可用于定义作业。在传统的开发环境中,脚本化的新调度可能出现不一致性,它可能在测试过程中运行正常,但是在生产环境中却出现问题。如果实现调度自动化,面向所有作业的相似的符号和接口都可以在最初阶段就被使用,从而及早进行精确的测试。如果用“基础设施即代码”来配置最接近生产环境的测试环境,这一方法更为有效,可以预测并消除与其他工作负载不一致或争夺资源的情况。

  使用源代码管理系统(SCM)

  源代码管理系统(比如GIT、Subversion、CVS和TFS等)创建了一个中央代码库,用于存储应用组件并管理版本。它能够使应用恢复到之前的版本、比较版本差异并识别变化,以及管理已部署系统中的潜在漂移。它还提供了一种快速可靠的方法,在新的环境中构建或重构应用。

  当SCM中的任何部分被修订后,构建工具(比如Jenkins®)针对错误或功能回归重新构建并测试应用。通常情况下,测试失败后全体开发团队就得努力解决问题,这样会导致进度延迟。而使用作业即代码能够减少错误数量。

  此外,应用越复杂,开发生命周期也越长,通常涉及开发、测试、集成、试运行、预生产测试、用户验收测试(UAT)及其他环节。如果将作业即代码与SMC和及早测试结合起来,复杂性的增加就不会带来更多下游难题。相反,交付至生产环境的应用将具备一致性并经过全面测试。

  考虑价值等式

  如要应用带来最大的投资回报,开发流程就要尽可能简化、高效,并且应用在生产环境中运行时问题也要尽可能少。作业即代码是同时实现这两个目标的关键要素。

  最后,请牢记一点:最严谨的开发方法偶尔也会失败。作业即代码为应用增添了可见性,当需要时,运维团队和支持团队可以更快速地发现、分析和解决问题,从而让应用恢复正常。

芥末视频

最近更新
科普

科普图集
带着朋友和机器人上月亮散步

带着朋友和机器人上月亮散步>>详情

邮件订阅

软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
网络周刊
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
存储周刊
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
安全周刊
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家网
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。