封装是装系统的逆过程,由工具安装的系统亦可由工具来进行封装。 问题:为什么要使用别人的工具来进行这些工作 答:既然已经有人走过这条路了,剩下的只需要把前辈们的经验Copy到自身就好了。 封装分两阶段: 1.复习系统安装过程 2.使用逆过程来进行系统封装 3.系统备份与恢复 一、使用工具进行系统安装 ...
递归调用:在调用一个函数的过程中,直接或者间接又调用了函数本身,称之为递归调用。
递归的必备的两阶段:一:递推 二:回溯
def foo():
print(‘abc‘)
foo()
foo()
import sys
print(sys.getrecursionlimit())
sys.getrecursionlimit(200) #设置递归次数
print(sys.getrecursionlimit())
def age(n):
if n == 1:
return 18
return age(n-1) + 2
print(age(5))
g=[1,[2,[3,[4,[5,[6,[7]]]]]]]
def foo(g):
for i in g:
if type(i) is list:
foo(g)
else:
print(i)
foo(g)
二分法:
g=[1,2,3,4,5,6,7,8,10,13,455,678,990,11111] #从小到大排列的数字列表
def foo(g,numl):
print(g)
if le
分类:
其他好文 时间:
2018-08-25 20:13:43
阅读次数:
232
4.6 Message Delivery Semantic(消息传递语义) 现在我们了解了生产者和消费者的工作方式,让我们讨论Kafka在生产者和消费者之间提供的语义保证。显然,可以提供多种可能的消息传递保证: 最多一次 -消息可能会丢失,但永远不会被重新发送。 至少一次 -消息永远不会丢失,但可能 ...
分类:
其他好文 时间:
2018-08-18 10:28:59
阅读次数:
172
在分布式系统中,著有CAP理论,该理论由加州大学伯克利分校的Eric Brewer教授提出,该理论阐述了在一个分布式系统中不可能同时满足一致性(Consistency)、可用性(Availability),以及分区 容错性(Partition tolerance)。 一致性在分布式系统中数据往往存在 ...
分类:
其他好文 时间:
2018-07-03 15:15:56
阅读次数:
172
对于多线程编程,如何优雅的终止子线程,始终是一个值得考究的问题。如果直接终止线程,可能会产生三个问题: 子线程当前执行的任务可能必须要原子的执行,即其要么成功执行,要么就不执行; 当前任务队列中还有未执行完的任务,直 ...
分类:
编程语言 时间:
2018-06-10 11:57:36
阅读次数:
219
理论部分不解释了, 就是粘个实验课的代码,按照书上的算法写的,仅仅是把课本上的样例过了,有bug可能难免,欢迎指出。 Sample 1. $$ \left\{\begin{aligned}min z = 5x_1+21x_3\\s.t.\,\,x_1-x_2+6x_3-x_4=2 \\x_1+x_2 ...
分类:
其他好文 时间:
2018-06-06 12:36:50
阅读次数:
171
渲染性能 Android UI的工作分两阶段: 1.在UI线程Record View#draw 2.在RenderThread线程DrawFrame(RenderThread:使用GPU资源的线程) 第一阶段随着View的invalidated在draw(Canvas)中进行 第二阶段native ...
分类:
其他好文 时间:
2018-05-29 23:03:46
阅读次数:
320
一 微服务主要困难 单体应用拆分为分布式系统后,进程间的通讯机制和故障处理措施变的更加复杂。 系统微服务化后,一个看似简单的功能,内部可能需要调用多个服务并操作多个数据库实现,服务调用的分布式事务问题变的非常突出。 微服务数量众多,其测试、部署、监控等都变的更加困难。 对于第一个问题:参考 http ...
分类:
其他好文 时间:
2018-05-13 22:59:30
阅读次数:
160
随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。 为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。在《分布式系统的一致性探讨》一文中主要介绍了分布式系统中存在的一致性问题。 ...
分类:
其他好文 时间:
2018-05-09 14:33:59
阅读次数:
137
在两阶段提交协议(Two Phase Commitment Protocol,2PC)中,把分布式事务的某一个代理指定为协调者(Coordinator),所有其他代理称为参与者(Participant)。这里的代理是指完成各个子事务的进程。只有协调者才拥有提交或撤销事务的决定权,而其他参与者各自负责 ...
分类:
其他好文 时间:
2018-04-20 10:16:00
阅读次数:
146