自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ctotalk

专注研发团队管理,软件架构,团队建设,职业发展等方向

  • 博客(127)
  • 资源 (1)
  • 收藏
  • 关注

原创 2021new stater

迎接新的开始,2021沉淀 蜕变 静心 修炼!

2020-12-31 23:08:21 5373

原创 2020 get out fk off

不平常的2020终于要过去了,五味杂陈,人生重大转折。新的一年新的开始,新的序章,努力奋斗!

2020-12-31 23:05:01 5384

原创 Python 列表(List)

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:

2020-12-31 14:28:01 5579

原创 Python random() 函数

记录用过的python知识学以致用,用过后才有更深的印象random()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。import randomprint( random.randint(1,10) ) # 产生 1 到 10 的一个整数型随机数 print( random.random() ) # 产生 0 到 1 之间的随机浮点数print( random.uniform(1.1,5.4) ) #

2020-12-31 00:34:17 5591

原创 Python获取当前时间的用法

python记录用过的python知识python获取当前时间的用法1.先导入库:import datetime2.获取当前日期和时间:now_time = datetime.datetime.now()3.格式化成我们想要的日期:strftime()比如:“2016-09-21”:datetime.datetime.now().strftime('%Y-%m-%d')4.在当前时间增加1小时:add_hour=datetime.datetime.now()+datetime.timedelta

2020-12-31 00:26:40 5618

原创 Python字符串转换 str与int互转

字符串str转换成int: int_value = int(str_value)int转换成字符串str: str_value = str(int_value)int -> unicode: unicode(int_value)unicode -> int: int(unicode_value)str -> unicode: unicode(str_value)unicode -> str: str(unicode_value)int -> str: str(int

2020-12-31 00:21:14 6506

原创 Python逻辑运算符and or not

Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:运算符 逻辑表达式 描述 实例andx and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。orx or y 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。notnot x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它

2020-12-31 00:18:30 7593

原创 Python 异常处理

最简单写法 try-except-elsetry:<语句> #运行别的代码except <名字>:<语句> #如果在try部份引发了'name'异常except <名字>,<数据>:<语句> #如果引发了'name'异常,获得附加的数据else:<语句> #如果没有异常发生示例:try:fh = open(“testfile”, “w”)fh

2020-12-31 00:14:26 5606

原创 Python 读写文件

Python 读写文件读文件写文件读文件打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): f = open('test.txt', 'r')r表示是文本文件,rb是二进制文件。(这个mode参数默认值就是r)如果文件不存在,open()函数就会抛出一个IOError的错误,并且给出错误码和详细的信息告诉你文件不存在:f=open(‘test.txt’, ‘r’)Traceback (most recent call last):File “”, line 1

2020-12-30 23:39:34 5568

原创 设计模式-06.代理模式(Proxy Pattern)-静态代理

设计模式-06.代理模式(Proxy Pattern)

2020-12-30 19:40:21 5652

原创 do you need to install a parser library

方法一:安装lxml 在cmd中输入pip install lxml方法二:换一种解析方式将soup = BeautifulSoup(r.text, ‘lxml’)修改成如下形式即可:soup = BeautifulSoup(r.text, ‘html.parser’)

2020-12-30 19:24:48 6972

原创 python设置文件编码 Defining Python Source Code Encodings

PEP 263 – Defining Python Source Code EncodingsPEP: 263Title: Defining Python Source Code EncodingsAuthor: mal at lemburg.com (Marc-André Lemburg), martin at v.loewis.de (Martin von Löwis)Status: FinalType: Standards TrackCreated: 06-Jun-2001Python-

2020-12-30 19:19:22 5799

原创 设计模式-概述

设计模式是内功心法,需要大量的代码实践。

2020-12-30 00:00:06 7550

原创 设计模式-拦截过滤器 filter

拦截过滤器模式拦截过滤器模式(Intercepting Filter Pattern)用于对应用程序的请求或响应做一些预处理/后处理。定义过滤器,并在把请求传给实际目标应用程序之前应用在请求上。过滤器可以做认证/授权/记录日志,或者跟踪请求,然后把请求传给相应的处理程序。以下是这种设计模式的实体。过滤器(Filter) - 过滤器在请求处理程序执行请求之前或之后,执行某些任务。过滤器链(Filter Chain) - 过滤器链带有多个过滤器,并在 Target 上按照定义的顺序执行这些过滤器。Tar

2020-12-29 23:59:19 5644

原创 设计模式-传输对象

传输对象模式传输对象模式(Transfer Object Pattern)用于从客户端向服务器一次性传递带有多个属性的数据。传输对象也被称为数值对象。传输对象是一个具有 getter/setter 方法的简单的 POJO 类,它是可序列化的,所以它可以通过网络传输。它没有任何的行为。服务器端的业务类通常从数据库读取数据,然后填充 POJO,并把它发送到客户端或按值传递它。对于客户端,传输对象是只读的。客户端可以创建自己的传输对象,并把它传递给服务器,以便一次性更新数据库中的数值。以下是这种设计模式的实体。

2020-12-29 23:57:55 5609

原创 设计模式-原型模式

原型模式原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据库,以此来减少数据库调用。介绍意图:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。主要解决:在运

2020-12-29 23:56:16 5566

原创 设计模式-05.建造者模式 再次理解director,builder,product.

director,builder,product.使用场景当一个类的构造函数参数个数超过4个,而且这些参数有些是可选的参数,考虑使用构造者模式。解决的问题当一个类的构造函数参数超过4个,而且这些参数有些是可选的时,我们通常有两种办法来构建它的对象。 例如我们现在有如下一个类计算机类Computer,其中cpu与ram是必填参数,而其他3个是可选参数,那么我们如何构造这个类的实例呢,通常有两种常用的方式:public class Computer { private String cpu

2020-12-29 23:54:28 5800

原创 设计模式-05.建造者模式 链式调用

05.建造者模式 链式调用我们在开发过程中,经常遇到这种写法,Product product= new builder().setA("fo").setB("bar").setC("so").build();这种写法可以一直.set链式调用,这也是建造者模式的一种写法,通过链式调用去装饰产品。最后build()建造产品。上代码。public class Computer { private final String cpu;//必须 private final String ram;

2020-12-29 23:42:09 6832 1

原创 北大才女文章 《卖米》感动人心

看到朋友圈里好友分享,来自贫困农村的北大才女文章 《卖米》感动人心,抓紧查询阅读。对于相同境遇的我,一样感触很深。分享给大家。唯有努力奋斗,拼搏向上,才能改变命运。卖米天刚蒙蒙亮,母亲就把我叫起来了:“琼宝,今天是这里的场,我们担点米到场上卖了,好弄点钱给你爹买药。”我迷迷糊糊睁开双眼,看看窗外,日头还没出来呢。我实在太困,又在床上赖了一会儿。隔壁传来父亲的咳嗽声,母亲在厨房忙活着,饭菜的香气混合着淡淡的油烟味飘过来,慢慢驱散了我的睡意。我坐起来,穿好衣服,开始铺床。“姐,我也跟你们一起

2020-12-29 23:09:59 6482

原创 深入学习三个月向大厂发起冲击

深入学习三个月向大厂发起冲击立此贴,一起加油!不要温水煮青蛙,挑战自己一下,获得更好的待遇和前景。一直想创业,没有好的产品思想,没有好的资源,只能靠自己继续吃技术这碗饭了。大厂,是终极追求,这么多年一直在中小厂,虽然做到管理岗,但是实在有遗憾,自身能力需要突破。另外太早做管理也不是好事情,把技术做扎实,还是安心做好技术和架构的事情。端好自己的饭碗。...

2020-12-29 11:00:29 5658

原创 发愤图强

发愤图强,知耻后勇。坚持三个月,蜕变自己,提升自己。

2020-12-29 00:08:29 5483

原创 设计模式-05.建造者模式与模板方法模式比较

Builder 建造者模式Builder 建造者模式,其实和模板模式非常的像,但是也有区别,那就是在模板模式中父类对子类中的实现进行操作,在父类之中进行一件事情的处理,但是在 Builder 模式之中,父类和子类都不用关心怎么处理,而是用另一个类来完成对这些方法的有机组合,这个类的职责就是监工,规定了到底要怎么样有机的组合这些方法。在监工类(Director)中,将父类组合进去,然后调用父类的操作来抽象的实现一件事情,这就是面向接口(抽象)变成的妙处了,当然这个 Builder 可以使接口也可以是抽象类,

2020-12-29 00:02:08 8440

原创 设计模式-05.建造者模式(Builder Pattern)

设计模式-05.建造者模式(Builder Pattern)

2020-12-28 23:52:25 5605

原创 设计模式-04.模板方法模式

设计模式-04.模板方法模式

2020-12-28 19:41:04 5890

原创 设计模式-03.抽象工厂模式

设计模式-03.抽象工厂模式

2020-12-28 19:23:18 5682

原创 设计模式-02.工厂方法模式

有了简单工厂模式,为什么还需要工厂方法模式?简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断**,根据客户端的选择条件动态实例化相关的类**,对于客户端来说,去除了与具体产品的依赖。如果简单工厂模式需要改动,比如新增加一个运算,那么我们一定要给运算工厂类的方法里面加“Case”的分支条件的,修改原来的类。这样我们不但对扩展开放了,对修改也开放了,违背了开发-封闭原则的。什么是工厂方法模式?定义一个用户创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。工厂方法模式实

2020-12-28 19:09:33 5638

原创 设计模式02.工厂模式-简单工厂

设计模式02.工厂模式

2020-12-28 18:47:28 5795

原创 编织属于自己的梦!

编织属于自己的梦!成都的流调是吃喝玩乐,深圳的流调是个美食家。而只有北京的流调,让人看了内心流泪,又沉凝不语。或许为了自己的小家能多添置一个大件,或许为了孩子能过上好日子,或许为了远在老家的父母改善生活。每一个人都在拼命的努力着。其实他们就是在北京奋斗的人群万千缩影,真实而努力,不甘又充满希望。每一个人,在这偌大城市的一角,努力的编织着属于自己的梦。...

2020-12-28 18:31:16 5566

原创 努力 奋斗!

努力 奋斗人生总要有这么一段时光纯粹而简单疯狂而热烈拼搏而勇敢若干年后 回忆起来 让自己感动惊艳了时光 温柔了岁月 丰富了记忆成为你人生宝贵的一笔财富

2020-12-28 18:28:42 5712

原创 设计模式-01单例模式 Singleton Pattern 最详细

设计模式-01单例模式 Singleton Pattern

2020-12-28 18:26:42 5861

原创 研发管理-质量与效率提升-混沌工程在携程的实践

研发管理-质量与效率提升-混沌工程在携程的实践前几天听了携程SRE运维总监方菊女士的演讲,特别有感触,也是因为负责的产品和项目团队在上线过程中出现了很多的故障。本人前几篇文章介绍了携程在故障处理方面的经验介绍,又在网上查找到相关资料 混沌工程在携程的实践的pdf版,分享给大家。这还是2019年携程技术峰会上的分享,今年的分享跟此内容大体差不多,但是更升华和具体,ppt内容也更丰富。感谢携程运维总监的分享。对于研发团队,特别是中小型研发团队,可能没有专门的运维质量部门,需要

2020-12-27 21:18:06 8696 2

原创 研发管理-在团队中开展故障检验平台建设

在团队中开展故障检验平台建设学习携程SRE稳定性风险治理框架思路,并在团队开展了故障检验平台的建设,其建设的总体原则和路径有:1.验证历史故障的修复2.主动设计故障场景并发起挑战3.形成design for failure的文化**1.测试覆盖常见故障场景2.生产、测试环境少量演练3.生产关键应用的定期演练4.生产设定场景的随机演练5.生产全自动化演练和验证把上面的实践思路,同我们自身的研发管理和产品测试相结合,能得到很多的启发。通过故障检验思路,原则,方法,实践,将系统故障扼

2020-12-27 18:02:13 5577

原创 研发管理-故障处理-故障多样化演练场景

学习携程稳定性风险治理框架中,混沌工程构建原则,其中故障多样化演练场景,主要需思考设计的点有以下内容,其中的每一个点,都值得都需要再深入学习研究,此处分享整体概念和思路。Route: 路由层集群拉出流量突增限流证书错误Application:应用层依赖超时依赖异常OOM线程池满DATA:数据层Redis宕机Miss CacheRedis切换Redis延迟DB宕机DB连接满DB切换DB阻塞DB IO高OS:操作系统层服务器宕机High CPUHigh IOH

2020-12-27 17:50:24 5722 1

原创 研发管理-混沌工程原则

学习工行稳定性的风险治理框架中,里面有一项混沌工程。构建混沌工程需要具有以下原则:假定稳定的状态在生产环境进行演练 ?客户环境?持续的,自动的运行演练最小化爆炸半径多样化的鼓掌场景...

2020-12-27 17:39:09 5680 1

原创 研发管理-稳定性风险治理

研发管理-稳定性风险治理前言:在研发管理过程中,软件产品上线运行中,不可避免的会有很多故障问题,特别是新品上线。今年上线新品的时候,就出了很多故障,造成了很不好的影响,包括产品的和研发团队的和我个人的。学习了devops的部分课程,其中,系统性的风险治理内容,影响深刻,很有启发,在这里总结和分享。故障前:**也就是开发,测试,实施等过程高可用架构设计故障恢复预案混沌工程故障中:异常检测故障定位故障隔离故障恢复故障后:故障复盘COE分析改进措施问题管理研发团队和研发管理人

2020-12-27 17:25:25 7054 1

原创 论万事开头难

论万事开头难周末的两天在家宅着,因为疫情的影响,也不能打球不能约酒,昨天开了周例会,刷了很久的抖音,一直到睡觉。今天也是刷抖音到下午,突然觉得不能这样,要坚持下去。打开电脑,晃悠着,慢慢也写了不少。让我想起了小时候看到表哥写的一篇作文,万事开头难,只要有好的开头就是成功了一半,包括写作文,初高中都讲究龙头凤尾猪肚子,说的也是开头的重要性。今天讲的开头其实是开始,行动的开始,如何放下手机,开始做事情,放下杂事,开始专心致志。当你能放下手机,开始打开电脑搞学习搞研究时,其实也能坚持不少时间,但是放下手机

2020-12-27 17:13:30 6421 1

原创 研发管理能力提升概述

研发管理能力提升研发过程规范性提升版本、制品统一管理明确的分支模型及合并策略变更过程规范化研发环境,服务器配置标准化质量管控加强测试左移,质量内建单元测试覆盖率提升自动化测试覆盖率提升完善质量规约并严格执行自动化能力提升构建自动化测试自动化部署自动化环境准备自动化...

2020-12-27 17:05:02 6730 1

原创 使用 Kubectl 管理 Kubernetes 容器平台

使用 Kubectl 管理 Kubernetes 容器平台一、Kubectl 概述二、Kubectl 创建和删除一个 pod 相关操作1.在集群上运行一个镜像2.Kubectl run 语法3.pods 常见的状态3.使用 Kubectl delete 删除创建的对象1)删除 pod2)删除 deployment三、yaml 语法规则1.yaml 语法的基本语法规则2.yaml 支持的三种数据结构四、Kubectl create 加载 yaml 文件生成 deployment1.生

2020-12-27 16:54:03 6216

原创 23种设计模式概要总结

1.单例模式(Singleton Pattern)定义:Ensure a class has only one instance, and provide a global point of access to it.(确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。)通用代码:(是线程安全的)public class Singleton { private static final Singleton singleton = new Singleton();//限制产生

2020-12-27 16:51:14 6292

原创 面向对象-设计模式分类

设计模式的分类创建型模式工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式行为模式策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。...

2020-12-27 16:38:49 6444 1

WinMTR显示ip版本

网络链路检测工具 WinMTR显示ip版本工具软件,ip可能不准确,软件下载自蓝队云网站。网络链路检测工具 WinMTR显示ip版本工具软件

2019-11-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除