B站课程 笔记
二.
吉姆格雷:电商巨头与数据库思想→计算机避免出错的思维方式
①数据库基本概念:
数据库管理系统DBMS(云端运行,手机可申请云端修改)与关系型数据库(多表格内容联动变化,交易关系)
②计算机储存特点:
内存:速度快,断电消失
硬盘:速度慢,永久保存
以上两步时间差是出现“不一致”错误的核心原因(如死机或闪退)→inconsistency
③吉姆格雷提出transaction处理(事务或交易处理)
a.原子性:不可拆分
b.transaction:一组对数据库的操作→技术上不同运行步骤,但逻辑一体
c.日志系统:记录系统产生内部数据,每次请求开始会产生“预写日志”→意外重启后数据库会检查(数据回滚或继续操作)→两步骤均完成即可完成交易
d.更极端的数据问题:物理问题(异地多次备份)→如何处理“分布性”数据库一致性?→将时间锁定(locking)以协调多个服务器
e.master数据库:主数据库先给自己locking,确认所有从服务器可写入→安全写入→如果已经被写入则回滚释放
④思想应用
如:client/Server数据管理与通信及容错与高可靠性
立足生活:
a.计算器非常重视“异常”(难以避免,且用户基数大错误会很明显)
b.生活中和“异常”相处的处理能力,乃至心态,从容应对不仅是有经验的表现,还能发现新机遇
c.现代工作与社会也会准备诸多预案
d.亚马逊与阿里云来自处理异常,也成为了各自业务的全新增长点
三.传输奥秘
信息传递 过程中 汉明码 对数据 验证
image.png
image.png
四.加密算法
RSA加密算法
image.png
image.png
m^e %n=c //e n 公钥 //m 明文 //c 密文
c^d %n=m
// d 私钥
p=2 q=11
n=p*q=22
fin(n)=(p-1)*(q-1)=10
//3.
1<e<10
e=3
//4求 D
e*d-1=fin(n)
d=2*10 +1)/3
d=7
e 3
n 22
d 7
function getC(m,e,n){
let s1=Math.pow(m,e)
return s1%n
}
function getM(c,d,n){
let s1=Math.pow(c,d)
return s1%n
}
大数质因数分解
时间复杂度
网友评论