• 【DevOps】谁说大象不能跳舞?


    作者:范军 (Frank Fan) 新浪微博:@frankfan7   微信:frankfan7

    很多企业,尤其是大企业在产品开发和运维上存在着一些普遍问题,比如开发周期长、人员合作程度不高、开发和运维脱节等等。可看看一些巨型企业,比如GoogleAmazonFacebook,Salesforce等等,人家的规模不比你大,架构不比你复杂?为什么他们能做到大而灵?成功的因素固然有很多,而一个共同的因素是,他们都引入了DevOps的概念。

    DevOps是基于AgileLean发展而来的一种理念,目的是更好的优化开发和运维的流程,从而更快、更高效的实现产品更新。DevOps是由Development + Operation缩写而来,但绝不是二者的简单相加。引入DevOps需要在企业文化和技术上都要落实一些措施。

    在我们进一步介绍该理念之前,本文来探讨一些我见过的IT环境中的问题,尤其是在大企业中有普遍性的问题。



    上图想说的是由于组织结构、文化以及技术局限性的多种原因,各个组负责自己的一亩三分地,别组的事情不管我事,我也根本不知道别人在干什么。那产生的后果呢,咱们从项目的各个环节一一道来。

    设计阶段

    需求分析和后面的环节脱钩。往往大费时间精力制定的需求,在后续阶段中不能很好的执行。可能的原因有:需求本身的质量不高,没有很好的衡量手段和标准二需求没有体现整个LifeCycle往往忽视运维中可能出现的问题只注重Functional Requirements , 而忽略Non-Functional Requirement

    另外需求更改是难免的,可合同已经签了。按照Change Control的规定,需要重新评估时间,人力及风险,这一趟下来时间上的损失不说,非常耗精力。

    开发阶段

    实施人员可能对设计本身的了解不透彻,更别说对需求的把握了。做出来的东西有时走了样,忘了本来的目的是什么。

    测试阶段

    Unit Testingintegration Testing,   Performance Testing, Stress Testing, UserAcceptance Testing.   整个测试阶段耗时耗力,测试人员有时闲的要死,有时忙的要死。各个测试之间的协调也是问题。

    运维阶段

    大型复杂项目中往往一个Change需要涉及多个团队,本来30分钟的活儿,你要想每个组都批准Change可能要数天甚至数周。运维中出了问题呢,各个组之间扯皮推脱自是家常便饭。怕的是有的时候根本不知道哪出了问题,也可能整个系统靠个别技术牛人来撑着,其他人没有也不知道如何下手。

    解决方案

    发牢骚谁都会,那么有解决办法么?当然有,不过这可不是什么灵丹妙药,一吃就灵。需要从上至下,在文化上和技术上都要有下大力气才行。请关注下文将展开DevOps的一些实施细节。


  • 相关阅读:
    .NET Core微服务之路:基于Consul最少集群实现服务的注册与发现(二)
    .NET Core微服务之路:基于Consul最少集群实现服务的注册与发现(一)
    在.NET Core中三种实现“可插拔”AOP编程方式(附源码)
    Spreadsheet引用异常解决
    c#字符串中英文混合,根据字符长度截取的函数
    Golang学习-第二篇 搭建一个简单的Go Web服务器
    Golang学习-第一篇 Golang的简单介绍及Windows环境下安装、部署
    受限玻尔兹曼机与MCMC-Gibbs采样计算
    Generative PointNet: Deep Energy-Based Learning on Unordered Point Sets for 3D Generation, Reconstruction and Classification
    【SpringBoot与分布式 04】
  • 原文地址:https://www.cnblogs.com/snake-hand/p/3211882.html
Copyright © 2020-2023  润新知