摘要:
多行注释: ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I,再插入注释符,比如"#",再按Esc,就会全部注释了。 多行删除: 先按v,进入visual模式,横向选中列的个数(如"#"注释符号,需要选中两列),再按Esc,再按ctrl+v 进入列编辑模 阅读全文
摘要:
问题 ES监控出现偶尔的波动,CPU和磁盘IO升高 有时候在凌晨,业务请求比较低,也没有慢查询,GC也比较正常,没有出现Full GC ES内部的merge segment会占用CPU和磁盘资源,怀疑是这个导致,现针对merge segment做一下优化; 优化 ES是准实时的搜索,往ES插入数据时 阅读全文
摘要:
Popen对象 poll() 判断是否执行完毕,执行完毕返回0,未执行完毕返回None terminate() 终止进程发送SIGTERM信号 raise 自定义返回错误 阅读全文
摘要:
发布或重启线上服务时抖动问题解决方案 一、问题描述 在发布或重启某线上某服务时(jetty8作为服务器),常常发现有些机器的load会飙到非常高(高达70),并持续较长一段时间(5分钟)后回落(图1),与此同时响应时间曲线(图2)也与load曲线一致。注:load飙高的初始时刻是应用服务端口打开,流 阅读全文
摘要:
自定义创建有序字典类 dict的__getitem__方法 有些不同,想使用自定义__getitem__方法显示查询key的下标;需要研究 阅读全文
摘要:
一、类的成员 类的成员可以分为三大类:字段、方法和属性 注:所有成员中,只有普通字段的内容保存对象中,即:根据此类创建了多少对象,在内存中就有多少个普通字段。而其他的成员,则都是保存在类中,即:无论对象的多少,在内存中只创建一份。 1. 字段 字段包括:普通字段和静态字段,他们在定义和使用中有所区别 阅读全文
摘要:
编程模式概念 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向对象的三大特性 一、封装 第一步:将内容封装到某处 self 是一个形式参数,当执行 tubie = Teac 阅读全文
摘要:
递归阶乘: 函数自己调用自己循环操作的模式称之为递归 def func(num): if num == 1: return 1 return num * func(num - 1) print(func(7)) 反射: 含义:通过字符串的形式去对象(模块)中操作(寻找/检查/删除/设置)成员 通过字 阅读全文