01 - 10

01 - Ticket驱动开发

提倡无论是提交应用程序还是基础设施的代码,所有的任务都需要先创建一个ticket,然后在开展工作的同时,同步更新ticket的状态和信息。

Ticket的关闭,也就是表明了对应工作内容的完成。

02 - PCDA循环与DevOps

PDCA循环是一种管理方法,主要用于在企业和商业活动中进行持续生产改善,并采取相应的控制措施。

这一方法将业务分为Plan(计划)、Do(执行)、Check(检查)和Act(处理)四个阶段来进行,在执行改善措施之后,又回到Plan(计划)阶段,如此循环往复。

  • P (Plan) 计划:包括方针和目标的确定,以及活动规划的制定。
  • D (Do) 执行:根据已知的信息,设计具体的方法、方案和计划布局;再根据设计和布局,进行具体运作,实现计划中的内容。
  • C (Check) 检查:总结执行计划的结果,分清哪些对了,哪些错了,明确效果,找出问题。
  • A (Act)处理:对总结检查的结果进行处理,对成功的经验加以肯定,并予以标准化;对于失败的教训也要总结,引起重视。对于没有解决的问题,应提交给下一个PDCA循环中去解决。

    以上四个过程不是运行一次就结束,而是周而复始的进行,一个循环完了,解决一些问题,未解决的问题进入下一个循环,阶梯式上升。

    全面质量管理活动的全部过程,就是质量计划的制订和组织实现的过程,这个过程就是按照PDCA循环,不停顿地周而复始地运转的。

关于PDCA的现代观点

  • P(Planning)——包括三小部分:目标(goal)、实施计划(plan)、收支预算(budget)。
  • D(design)——设计方案和布局。
  • C(4C)——4C管理:Check(检查)、Communicate(沟通)、Clean (清理)、Control(控制)。
  • A(2A)——Act(执行,对总结检查的结果进行处理)、Aim(按照目标要求行事,如改善、提高)。

与DevOps的关系

实施DevOps需要以PDCA的方式循环进行,在DevOps中,敏捷开发方法是实现PDCA循环的方法之一。

也就是说,DevOps是融合在业务中的持续性的改善和实践,而不是为了一次性完成所有的改善。

03 - 组织形式与DevOps

康威定律:设计系统的组织,其产生的设计等同于组织的沟通结构。

通过引入DevOps的工具和文化,能够使系统架构和组织结构同时发生变化。

04 - 在DevOps中应用Docker

构建功能单一的轻量级容器镜像

  • 容器以功能为单位进行分割,内容精简,缩小镜像
  • 容器之间尽量松耦合,消除容器内部对环境的依赖因素,提高通用性
  • 容器镜像本身不应保存与具体环境相关的信息

05 - From Traditional to Future

06 - DevOps技能图谱

不同成长阶段对技能的需求是不同的,无法准确用一张图来表示合适的内容。

大而全的技能图谱,不是为具体实施场景所准备的,而且里面甚至包括了过时的信息,不适合作为了解的途径。

这种技能图谱中的很多知识点、工具和技能其实不是现在就必须掌握的,重点是要掌握实际实施所必须的最少必要知识,先开展工作,然后在后期工作中按照需求、循序渐进地接触和使用。。

什么都想接触都想了解,效果必然很差,浪费时间和精力。

07 - 分支策略

制定分支的创建规则和使用规则,避免随意创建新分支导致的分支混乱、难以区分和回溯等问题。

  • 在什么时候需要使用分支?
  • 在什么时候合并到哪个分支?
  • 在不同的环境中分别使用哪个分支?
  • 在修改bug或者添加新功能时使用哪个分支?
  • ......

08 - DevOps几个关键点

  • 系统思考(将开发、测试、运维等环节之间的流程视为一条管道,从整体分析、定位和解决问题)
  • 增强反馈回路
  • 培养不断试验和学习的文化
  • 积极传播信息促进团队和个人成长

09 - 信息共享与管理

只有积极地传播和共享信息,才能推进DevOps的实施,提高团队的战斗力

  • 传统的方式:以文件形式存储在一台共享服务器上,存在难于搜索内容、无法获知更改信息和文件实时状态等问题
  • Web方式:Wiki、Confluence、看板等,易于创建和修改,能够快速准确找出所需信息
  • 代码库方式:信息文件存储在代码库,能够准确获知信息内容的状态和变化,以及历史信息

10 - 管理工作技术化

  • 需求失真,不透明,太抽象,需求管理混乱:明确唯一入口、团队共商共建、可视化、数据化等
  • 代码质量差:代码扫描自动化、在CI环节限制、评审策略化等
  • 测试反复,人力资源缺失:测试自动化、采用高效工具RobotFramework,Postman等
  • 版本零散、分支混乱、发布环境不一致:明晰的管理策略(代码、分支、环境)
  • 流程臃肿、数据繁杂,难以查看:可视化流程和数据
  • ......

11 - 20

11 - DevOps和Agile

如果说Agile是内功和心法的话,那么DevOps则是力量与招式。

Agile描述了一套价值观,却没有显式的把方法论体系化,而DevOps定义了一套方法论,把价值观蕴含在其实践中。

12 - DevOps标准与认证

《研发运营一体化(DevOps)能力成熟度模型》

  • 由工信部直属单位中国信息通信研究院牵头
  • 云计算开源产业联盟、高效运维社区和 DevOps 时代社区联合发起
  • 携手国内互联网、电信、金融等行业领先企业百余位专家共同编制
  • 全球首个 DevOps 标准,已在联合国直属标准化组织 ITU-T、中国工信部、中国通信标准化协会(CCSA)正式立项。

13 - 九问DevOps

“问题”一定是着某种具体的“目的与需求”来提问的,关于答案,没有正不正确,只有“合不合适”。

  1. 你对DevOps的理解是什么?
  2. 你认为DevOps的发展趋势是怎样的?
  3. 如果让你来组织或者引导一个DevOps项目的实施,你如何开展工作?
  4. 你将如何去说服或引领关键人(例如决策者、管理者、最终使用者、反对者等)赞同并支持建立DevOps机制?
  5. DevOps项目的实施后,落地了工具和方法,如何去评价DevOps的成效?
  6. 你获取和更新DevOps信息的途径和方式有哪些?最常用的是什么?
  7. 一套DevOps系统建立后,你认为如何保证这套系统的健康稳定的运转?
  8. 你在实施或运维DevOps过程中,遇到最大的困难是哪方面的?如何解决的?具体的方法是怎么?
  9. 你在推动和建立DevOps的过程中,投入最多精力和时间的是哪方面?为什么?

14 - CI Pipeline

读书笔记--用Python写网络爬虫02--数据抓取的更多相关文章

  1. 读书笔记--用Python写网络爬虫01--网络爬虫简介

    Wiki - Web crawler 百度百科 - 网络爬虫 1.1 网络爬虫何时使用 用于快速自动地获取网络信息,避免重复性的手工操作. 1.2 网络爬虫是否合法 网络爬虫目前人处于早期的蛮荒阶段, ...

  2. python写的爬虫工具,抓取行政村的信息并写入到hbase里

    python的版本是2.7.10,使用了两个第三方模块bs4和happybase,可以通过pip直接安装. 1.logger利用python自带的logging模块配置了一个简单的日志输出 2.get ...

  3. 读书笔记汇总 --- 用Python写网络爬虫

    本系列记录并分享:学习利用Python写网络爬虫的过程. 书目信息 Link 书名: 用Python写网络爬虫 作者: [澳]理查德 劳森(Richard Lawson) 原版名称: web scra ...

  4. 用Python写网络爬虫 第二版

    书籍介绍 书名:用 Python 写网络爬虫(第2版) 内容简介:本书包括网络爬虫的定义以及如何爬取网站,如何使用几种库从网页中抽取数据,如何通过缓存结果避免重复下载的问题,如何通过并行下载来加速数据 ...

  5. python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容

    python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...

  6. PHP网络爬虫实践:抓取百度搜索结果,并分析数据结构

    百度的搜索引擎有反爬虫机制,我先直接用guzzle试试水.代码如下: <?php /** * Created by Benjiemin * Date: 2020/3/5 * Time: 14:5 ...

  7. 笔记之《用python写网络爬虫》

    1 .3 背景调研 robots. txt Robots协议(也称为爬虫协议.机器人协议等)的全称是"网络爬虫排除标准"(Robots Exclusion Protocol),网站 ...

  8. Python写网络爬虫爬取腾讯新闻内容

    最近学了一段时间的Python,想写个爬虫,去网上找了找,然后参考了一下自己写了一个爬取给定页面的爬虫. Python的第三方库特别强大,提供了两个比较强大的库,一个requests, 另外一个Bea ...

  9. python写网络爬虫的环境搭建

    网上找了好多资料,都不全,通过资料的整理,包括自己的测试,终于把环境打好了,真是对于一个刚接触爬虫的人来说实属不易,现在分享给大家,若有不够详细之处,希望各位网友能补充. 第一步,下载python, ...

随机推荐

  1. String转float

    float mTotalhour = Float.parseFloat(mTotalHourEt.getText().toString().trim());

  2. 关于MyEclipse不停报错multiple problems have occurred 或者是内存不足 的解决办法

    这是因为 worksapace与svn代码不一样,要更新! 一更新就好了,困扰死我了,卧槽,搞了2个小时,难怪svn一提交就卡死人,原来还就是svn的问题,更新一下就行.

  3. smarty(原理概述)

    转自:http://www.cnblogs.com/RightDear/archive/2012/11/06/2756218.html smarty(模板引擎,模板技术) 使用smarty主要是为了实 ...

  4. Spring注入值得2种方式:属性注入和构造注入

    Spring是一个依赖注入(控制反转)的框架,那么依赖注入(标控制反转)表现在那些地方了? 即:一个类中的属性(其他对象)不再需要手动new或者通过工厂方法进行创建,而是Spring容器在属性被使用的 ...

  5. 超级好用的excel第三方组件

    http://www.cnblogs.com/MR_ke/archive/2010/02/25/1673243.html 前一篇介绍了怎么用com操作excel,后来有朋友说用NPOI好,下面我也来介 ...

  6. 理解MySQL——索引与优化(转)

    转自:http://www.cnblogs.com/hustcat/archive/2009/10/28/1591648.html 写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库 ...

  7. [算法] dijkstra单源无负权最小路径算法

    #include <stdio.h>#include <stdlib.h>#include <string.h> #define INF 1000000#defin ...

  8. Android Studio:Gradle DSL method not found: 'runProguard()'

    Android Studio发布了新的1.0版,更新之后却发现原来在0.8下面正常的项目编译失败了,从报错上来看是卡在gradle上面. Gradle DSL method not found: 'r ...

  9. CSS3 线型渐变

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 转载:org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.Annotation

    转载:org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.Annotation (2012 ...