1. Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File)。 RDB: Redis 默认的持久化方案。在指定的时间间隔内,执行指定次数的写操作,则会将内存中的数据写入到磁盘中。即在指定目录下生成一个dump.rdb文件。Redis 重 ...
分类:
数据库 时间:
2020-03-02 19:06:23
阅读次数:
73
1. fork系统调用 pid_t fork(); 该函数的每次调用都返回两次,在父进程中返回子进程的PID,在子进程中则返回0. 该返回值是后续代码判断当前进程是父进程还是子进程的依据。fork调用失败时返回-1,并设置errno。 fork函数复制当前进程,在内核进程表中创建一个新的进程表项。新 ...
分类:
系统相关 时间:
2020-03-01 17:09:20
阅读次数:
99
一 守护进程 1.1 基本概念 守护进程 正常情况下,主进程默认等待子进程调用结束之后结束 守护进程在主进程执行代码结束后,自动终止 守护进程语法: 进程对象.daemon = True ,设置该进程是守护进程 守护进程需要在start()方法之前设置 为主进程守护,主进程如果代码执行结束了,该守护 ...
分类:
编程语言 时间:
2020-02-23 22:21:23
阅读次数:
85
RDB和AOF持久化 ?RDB持久化 RDB是什么? 原理是redis会单独创建(fork) 一个与当前进程一模一 样的子进程来进行持久化,这个子进程的所有数据(变量。环境变量,程序程序计数器等)都和原进程一模一 样,会先将数据写入到一个临时文件中,待持久化结束了,再用这个临时文件替换上次持久化好的 ...
分类:
数据库 时间:
2020-02-22 20:10:56
阅读次数:
81
[toc] redis是一个基于内存的数据库,故在redis正在运行的数据都在内存中,而内存掉电,内存上所以数据都会消失。故把redis当成数据库使用时就需要对redis进行持久化。 在说redis持久化的时候,我们先来聊聊其他的知识。linux的父子进程。在Linux中使用fork()函数会给当前 ...
分类:
数据库 时间:
2020-02-19 17:32:43
阅读次数:
91
计算机系统结构分类法: Flynn分类法 a) SISD Single Instruction Single Data Stream b) SIMD Sigle Instruction Mutiple Data Stream c) MISD Mutiple Instruction Single Da ...
分类:
其他好文 时间:
2020-02-14 18:31:19
阅读次数:
79
# 进程 : 数据隔离,资源分配的最小单位,可以利用多核,操作系统调度,数据不安全,开启关闭切换时间开销大 # multiprocessing 如何开启进程 start join # 进程有数据不安全的问题 Lock (抢票的例子) # 进程之间可以通信ipc: # 队列(安全) 管道(不安全) # ...
分类:
编程语言 时间:
2020-02-08 15:52:11
阅读次数:
79
有时候需要保证同时只能有一个进程存在, 类似singleton的概念. 这时候简单方法就是对文件尝试加锁, 加锁成功就继续, 否则退出 函数定义如下: 锁是和内核的file entry绑定, 因此指向相同file entry的fd是共享一个锁的. 比如父子进程, 或者通过dup复制的fd, 由于指向 ...
分类:
其他好文 时间:
2020-02-08 13:22:24
阅读次数:
75
rdbSave 会将数据库数据保存到 RDB 文件,并在保存完成之前阻塞调用者。 save 命令直接调用 rdbSave ,阻塞 Redis 主进程;bgsave 用子进程调用 rdbSave ,主进程仍可继续处理命令请求。 save 执行期间, AOF 写入可以在后台线程进行, bgrewrite ...
分类:
其他好文 时间:
2020-02-08 00:43:17
阅读次数:
113
变量引用 变量范围 默认只在自己的shell范围内。 export功能 让子进程访问父进程的变量 删除变量 ...
分类:
系统相关 时间:
2020-02-07 22:41:33
阅读次数:
130