11 2016 档案

how to read openstack code : paste deploy
摘要:本篇分为以下几个部分 paste 是什么 怎样使用paste paste of neutron paste 是什么 WSGI 是python 中application 和 web server互通的标准。 我们知道了wsgi 中包括 app, middleware , server而且middlew 阅读全文

posted @ 2016-11-29 17:29 kramer 阅读(335) 评论(0) 推荐(0)

how to read openstack code : wsgi
摘要:要读懂本篇,你至少得写过一个python的web程序,并且把它部署到web服务器上过。 什么是wsgi 假设你写了一个python的web程序,并部署到了nginx上,那么一个http request的处理流程一般是下面这样: client/浏览器(发送请求) web服务器(转发该请求) 你的程序( 阅读全文

posted @ 2016-11-29 17:18 kramer 阅读(437) 评论(0) 推荐(0)

how to read openstack code
摘要:本文的目的不是介绍openstack。我们这里假设你已经知道了openstack是什么,能够做什么。所以目的是介绍如何阅读openstack的代码。通过读代码来进一步学习openstack。 转载要求你懂的:) 目的是懂python和web编程的人看完就能懂neutron代码, 如果没达到这个目的, 阅读全文

posted @ 2016-11-29 17:17 kramer 阅读(618) 评论(0) 推荐(0)

抽象与直观
摘要:coding中代码的可维护性和可读性是相矛盾的。 阅读全文

posted @ 2016-11-28 20:37 kramer 阅读(185) 评论(0) 推荐(0)

ospf
摘要:开放最短路径优先路由协议,区别于rip等距离矢量路由协议。 OSPF没有跳数限制,交流的是链路状态(而不是路由表),根据spf short path first算法生成最短路径树。 ospf有三张表 邻居 LSDB 路由表 5钟报文 hello 建立和维护neighbor , 发送给224.0.0. 阅读全文

posted @ 2016-11-24 17:36 kramer 阅读(166) 评论(0) 推荐(0)

RIP
摘要:距离矢量路由协议 假设网络拓扑如下 192.168.1.0网段 R1 192.168.12.0网段 R2 192.168.23.0网段 R3 192.168.3.0 网段 那么 R1 会告诉R2 : "我到192.168.1.0网段是直连", 因此R2知道了路由信息 : "到192.168.1.0 阅读全文

posted @ 2016-11-24 15:05 kramer 阅读(214) 评论(0) 推荐(0)

CAP理论
摘要:CAP 又叫 Brewer`s theorem. 是说对于分布式系统,不能同时满足以下三点: consistency:集群中所有节点在同一时刻数据一直 availability: 集群中一部分节点损坏,集群还能正常提供服务 partition tolerance:是否允许集群中部分节点之间不能通信( 阅读全文

posted @ 2016-11-18 11:30 kramer 阅读(225) 评论(0) 推荐(0)

python dos2unix
摘要:有时你在windows上创建的文件拿到Linux/unix上运行会出错, 这是因为windows上有些字符如换行符在linux/unix不识别。这种情况下需要用dos2unix这个工具把文件转换成linux格式的文件,但如果没有这个工具,我们可以用python来实现 cat file.dos | p 阅读全文

posted @ 2016-11-16 13:12 kramer 阅读(1605) 评论(0) 推荐(0)

python 二叉树
摘要:定义: class BTree(object): def __init__(self, value): self.l_child = None self.r_child = None self.value = value def insert_left(self, value): bt_node = 阅读全文

posted @ 2016-11-14 16:10 kramer 阅读(170) 评论(0) 推荐(0)

乐观锁悲观锁
摘要:这两种锁用来控制并发,不仅仅是用在数据库中。但是数据库中比较常见,我们用数据库来理解。 悲观锁: 假设冲突一定会发生,所以在操作的一开始就对数据加锁。 比如 oracle 中select for update。 加上锁以后,别人无法再对该资源进行更改(可读不可写)。 乐观锁 假设冲突不一定会发生,所 阅读全文

posted @ 2016-11-11 14:37 kramer 阅读(185) 评论(0) 推荐(0)

python函数值传递还是引用传递
摘要:c/c++中有值传递引用传递的区别。但是python中是值传递还是引用传递呢?首先看python中对变量的定义 “python中变量是指向某个内存的, 而内存中的内容是不可变的。” python的函数调用中,传递的是变量所指向的地址,但仍然很难说它是按照引用还是按照值传递。 比如: a=1 定义变量 阅读全文

posted @ 2016-11-11 13:47 kramer 阅读(396) 评论(0) 推荐(0)

python类变量以及应用场景
摘要:类变量是python 中class 的变量,区别于实例的变量。我们通过一些例子具体了解一下 先看下面的例子 class Demo(object): ... v1 = 1 ... d1 = Demo() d2 = Demo() d1.v1 == d2.v1 == 1 == Demo.v1 True 我 阅读全文

posted @ 2016-11-08 17:32 kramer 阅读(732) 评论(0) 推荐(0)

python: filter, map, reduce, lambda
摘要:filter built in function filter(f,sequence) filter can apply the function f to each element of sequence. If return is true the element will be returne 阅读全文

posted @ 2016-11-07 12:34 kramer 阅读(140) 评论(0) 推荐(0)

Why we have tuple and list in python
摘要:The most notable difference between tuple and list is that tuple is immutable and list is mutable. But why we have this two ? 1. Performance and cost 阅读全文

posted @ 2016-11-02 19:18 kramer 阅读(209) 评论(0) 推荐(0)

some 算法
摘要:矩阵变换:: 请用一条语句将: arr = [[1, 2, 3, 'a'], [4, 5, 6, 'b'], [7, 8, 9, 'c']] 转换装置矩阵为: [[1, 4, 7], [2, 5, 8], [3, 6, 9], ['a', 'b', 'c']] [ [ each[i] for eac 阅读全文

posted @ 2016-11-01 22:23 kramer 阅读(196) 评论(0) 推荐(0)

导航