摘要:
博客目录 python基础 python基础之文件读写 python基础之编码问题 python基础之dict、set及字符 python基础之循环结构以及列表 python基础 python高级 python高级之函数 python高级之装饰器 python高级之生成器&迭代器 python 高级 阅读全文
摘要:
[toc] 1. 事情起因 今天在写代码的时候,在django 的models目录中新增了一个pkg.py文件,里面定义了一个class, 在执行 makemigrations 的时候,发现这张表始终无法被识别,去网上找了找资料,没有找到这方面的问题的答案。。。 2. 排查经过 1. 尝试把这个cl 阅读全文
摘要:
[toc] 原因 因为最近项目需求中需要提供对异步执行任务终止的功能,所以在寻找停止celery task任务的方法。这种需求以前没有碰到过,所以,只能求助于百度和google,但是找遍了资料,都没找到相关的能停止celery task任务的方法(网上找到的一个方法实测不能用,可能是celery版本 阅读全文
摘要:
``` import time 斐波那契传统递归方法,属于二路递归,重复计算数值,计算效率非常低,随着n的增大,需要递归的次数将呈指数级增长 def bad_feibo(n): if n 阅读全文
摘要:
2017年终总结 本节内容 关于工作 新起点感受 目标完成度 明年规划 关于运动 运动的缘起 苦逼历程 明年规划 关于学习 今年好书推荐 学习获取的能力 明年展望 其他杂项 关于工作 1. 新起点感受 2017年3月11号,回到深圳,那时的内心是复杂的。 两年前,因为某些原因,逃离了这座城市,在外兜 阅读全文
摘要:
openfalcon源码分析之graph 本节内容 1. graph功能 2. graph源码分析 2.1 graph中重要的数据结构 2.2 graph的简要流程图 2.3 graph处理数据过程 2.4 graph数据迁移 3. graph设计优缺点 优点: 缺点: 1. graph功能 在整个 阅读全文
摘要:
本节内容 1. agent功能 1.1 agent上报数据 1.2 agent与HBS同步 1.3 agent Http服务 2. agent源码分析 2.1 初始化config配置 2.2 初始化根目录,本地IP和rpc连接池 big mapper 2.3 定时同步各种数据 2.4 HTTP服务 阅读全文
摘要:
本节内容 1. transfer功能 transfer接收数据来源 transfer数据去向 transfer的一致性hash transfer的一致性hash key的计算 2. transfer源码分析 2.1 初始化连接池,发送队列 2.2 初始化rpc和socket接收端 2.3 初始化ht 阅读全文
摘要:
openfalcon源码分析之hbs 本节内容 1. hbs功能 2. hbs源码分析 3. hbs设计优劣 1. hbs功能 hbs在整个open falcon项目中承担的角色就是连接数据库,作为数据库缓存,缓存配置,主要给agent和judge提供服务。 2. hbs源码分析 hbs源码分析将列 阅读全文
摘要:
openfalcon源码分析之Judge 本节内容 1. Judge功能 2. 源码分析 3. 设计优缺点 1. Judge功能 在open falcon中,Judge模块的功能是通过从HBS上同步告警的strategys(告警策略),及Expression,用来在接收transfer上报过来的数据 阅读全文
摘要:
kong插件官方文档翻译 目录 1. 介绍 2. 文件结构 3. 编写自定义逻辑 4. 存储配置 5. 访问数据存储 6. 自定义实体 7. 缓存自定义实体 8. 扩展Admin API 9. 编写测试 10. (卸载)安装你的插件 插件开发 介绍 什么是插件,他们如何与kong集成? 在进一步之前 阅读全文
摘要:
Lua 学习 本节内容 1. 迭代器与泛型for 2. talbe 3. metatables 4. 协程 5. 面向对象 1. 迭代器与泛型for 1.1 范型for为迭代循环处理所有的内容: 首先调用迭代工厂;内部保留迭代函数,因此我们不需要 iter 变量;然后在每一个新的迭代处调用迭代器函数 阅读全文
摘要:
GO语言heap剖析 本节内容 1. heap使用 2. heap提供的方法 3. heap源码剖析 4. 利用heap实现优先级队列 1. heap使用 在go语言的标准库container中,实现了三中数据类型:heap,list,ring,list在前面一篇文章中已经写了,现在要写的是heap 阅读全文
摘要:
GO语言list剖析 本节内容 1. 使用方法 2. list提供的方法 3. 源码剖析 1. 使用方法 在GO语言的标准库中,提供了一个container包,这个包中提供了三种数据类型,就是heap,list和ring,本节要讲的是list的使用以及源码剖析。 要使用GO提供的list链表,则首先 阅读全文
摘要:
算法之python创建链表实现cache 本节内容 1. 问题由来 2. 解决思路 3. 实现代码 4. 总结 1. 问题由来 问题起因于朋友的一次面试题,面试公司直接给出两道题,要求四十八小时之内做出来,语言不限,做出来之后才能参加接下来的面试。 于是,朋友拿到这套题给我们看看,本人看到这道题之后 阅读全文
摘要:
杂项之rabbitmq 本节内容 rabbitmq简介 AMQP协议 rabbitmq使用 应用举例 rabbitmq简介 介绍rabbitmq之前,先介绍一下AMQP协议,因为rabbitmq就是基于AMQP协议实现的一个服务程序。(目前为止应该也是唯一实现了AMQP协议的服务) AMQP(高级消 阅读全文
摘要:
杂项之python利用pycrypto实现RSA 本节内容 pycrypto模块简介 RSA的公私钥生成 RSA使用公钥加密数据 RSA使用私钥解密密文 破解博客园登陆 pycrypto模块简介 pycrypto模块是python中用来处理加密解密等信息安全相关的一个很重要模块。 该模块支持的加密方 阅读全文
摘要:
加密第四节_IPSec基本理论 本节内容 IPSec简介 IPSec两种工作模式 判断隧道模式和传输模式 IPSec两种模型 IPSec两个数据库 IPSec基本理论 IPSec简介 提供了网络层的安全; 在明文的IP头部和网络层数据之间插入了一个IPSec的头部,保证了网络负载的安全。 IPSec 阅读全文
摘要:
加密第三节_数字签名和数字证书 本节内容: 数字签名 完美解决方案 数字签名 数字签名工作原理 用户1将要发送的重要信息使用散列算法得到散列值,再通过私钥加密散列值,加密的散列值叫做数字签名; 然后将明文的重要信息和数字签名发给用户2。 用户2通过服务器获取到用户1的公钥,解密数字签名,得到散列值, 阅读全文
摘要:
加密第二节_散列算法 本节内容 散列函数(HASH函数) HMAC技术(哈希信息认证代码技术) 散列函数(HASH函数) 主流的散列算法有MD5和SHA-1,其主要任务是验证数据的完整性,通过散列函数计算得到的结果叫做散列值,该散列值通常被称为数据的指纹 散列算法特点 固定大小:散列函数可以接收任意 阅读全文
摘要:
加密第一节_加密方式介绍 本节内容 信息安全目标 加密方式介绍 对称秘钥算法 非对称秘钥算法 一个简洁而优雅的解决方案 信息安全目标 私密性 完整性 源认证 不可否认性 加密方式介绍(两大类) 对称加密算法: DES,3DES,AES,RC4 非对称加密算法: RSA,DH,ECC(椭圆曲线算法,主 阅读全文
摘要:
杂项之python描述符协议 本节内容 由来 描述符协议概念 类的静态方法及类方法实现原理 类作为装饰器使用 1. 由来 闲来无事去看了看django中的内置分页方法,发现里面用到了类作为装饰器来使用,由于之前就看到过这一类的用法,但是一直没有明白具体是如何实现的,今天本着打破砂锅问到底的精神去网上 阅读全文
摘要:
杂项之使用qq邮箱发送邮件 本节内容 特殊设置 测试代码 1. 特殊设置 之前QQ邮箱直接可以通过smtp协议发送邮件,不需要进行一些特殊的设置,但是最近使用QQ邮箱测试的时候发现以前使用的办法无法奏效了。。。于是上网查了查,QQ对这方面做了一些限制,必须使用授权码才能登陆邮箱。官方链接在这:htt 阅读全文
摘要:
算法之生成评论树 本节内容 问题由来 递归实现 高效实现 总结 1. 问题由来 项目中用到了展示用户多级评论的功能,但是在数据库中存储的每行数据之前是通过parent_id来标示他们之间的关系。从数据库中取出这一行行的数据,需要转换成类似于json数据格式的类型(其实就是通过parent_id将评论 阅读全文
摘要:
Django之Model操作 本节内容 字段 字段参数 元信息 多表关系及参数 ORM操作 1. 字段 字段列表 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 阅读全文
摘要:
杂项之年终总结 本节内容 2016年回顾 现状分析 2017年规划 1. 2016年回顾 不知不觉又到了年终了,回想今年,一路走来又是颠簸的一年。上半年还在上海做运维,中途回了一趟深圳,之后又跑到北京来学习。今年整整一年,资产收入是负数。。。。。。但是今年又是转行的一年,也是个人觉得最充实的一年。去 阅读全文