暂无搜索历史
这篇主要是把一个简单后端的流程串起来:Node.js 接收请求,PostgreSQL 存数据,Redis 存缓存,最后把结果返回给前端。
前面讲 Redis 时提过,为什么有时需要多台 Redis 服务器。PostgreSQL 也是一样:一台机器刚开始完全够用,但业务变大后,问题通常会从两个方向冒...
前两篇文章所讲,都是 PostgreSQL 帮你做了什么,这篇所说,则是要搞懂 它是怎么做到 断电不丢数据、崩溃能恢复
这里 事务2 已经基于 已扣款 也就是 余额 =1000 - 500 = 500 去做决策了,但是 A 的余额=1000
那 PostgreSQL 解决的是另一个更深处的矛盾: 数据可以自由地存,但数据之间必须保持准确和一致。
那么,既然有了 PostgreSql、MySQL 这些数据库了,为什么还需要 Redis?
如图所知,当采取 同步餐厅 模式,服务员去厨房等待出餐的时候,其他人都点不了单,这流程就卡住了。
所有东西都挂在一个共享的 Vue 构造函数 上面,看起来挺好,但问题也出现在共享上
看过上一篇的都知道,单核CPU的工作流程是 串行。既然是 串行,按道理来说,一次就只能运行一个程序,这在之前被叫做:单道批处理系统
先思考一个问题,在进入 多核 时代之前,在 单核 时代,是怎么让计算机越来越快的?
试图一直用规则穷举下去,会发现永远写不完,我们为什么能一眼看出来?只是我们见得多了,靠直觉,而不是靠规则
所有 Windows 规定:只有内核态的驱动才能用 in/out,普通程序使用直接报错
可以看出 CPU 永远只和 内存 直接打交道,而磁盘上的东西,要先搬运到 内存,才能被处理
注意: 机器码 -> 汇编代码 可以反汇编出对应指令,但变量名、注释、函数结构这些信息通常回不来;而 汇编代码 -> c 代码 更无法完全还原
这是十六进制表示出来的机器码。不同的 CPU(x86、ARM)有各自的机器码格式,所以一个平台上的机器码,不能直接拿到另一个平台上跑
windows 就像翻译官,程序说要 “播放声音”,windows就把这句话翻译成不同硬件能够理解的方式,再交给下面的驱动程序层
内存:内存本质上是一种由内存芯片构成的存储装置,常见的有 RAM、ROM 这些类型
那么你给它一个十进制数 0.1,它如何表示?它无法通过 2 的负整数次幂相加来刚好凑出 0.1,最终会得到一个循环小数。上面的例子会得到 0.000110011...
像 、 这些小数类型,底层虽然也还是二进制,但它们的表示规则和整数不一样,所以不能直接按这个思路去套。floatdouble
CPU 和内存,本质上都属于集成电路(Integrated Circuit,IC)。
暂未填写公司和职称
暂未填写个人简介
暂未填写技能专长
暂未填写学校和专业
暂未填写个人网址
暂未填写所在城市