顶级互联网工程师的计算机思维课(笔记)

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
}

大数质因数分解

时间复杂度

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容