编辑
2023-11-09
分布式理论基础
00

ZAB协议是ZooKeeper中用于实现操作顺序性的协议。它解决了兰伯特的Multi-Paxos无法保证操作顺序性的问题。在ZooKeeper中,数据以节点的形式存储,而ZAB协议确保了节点的操作按照一定的顺序进行。

下面是ZAB协议的基本原理和实现方式:

  1. 提案编号(Proposal Number):ZAB协议中,每个操作都有一个唯一的提案编号,用于标识操作的顺序。提案编号由两部分组成:一个递增的数字和一个唯一标识符,确保了每个操作的提案编号都是唯一的。
编辑
2023-11-09
分布式理论基础
00

POW算法(Proof of Work,工作量证明)是一种常用的共识机制,用于在区块链网络上达成一致,确认交易并生成新的区块。

  1. 概述:
    • POW算法是一种设计思路,通过计算难题的解来证明参与者在网络中进行了一定的工作量。
    • POW算法最早在1997年提出,被广泛应用于抵抗滥用软件服务的场景。
    • 在区块链中,POW算法被用于解决拜占庭将军问题,确保网络中的节点能够达成共识。
编辑
2023-11-09
Tomcat源码学习
00

Tomcat对异步Servlet的支持是通过Servlet 3.0引入的。异步Servlet允许Web应用在处理耗时请求时,将Tomcat线程立即释放,以便处理其他请求,从而降低系统资源消耗。下面是Tomcat对异步Servlet的支持的一些关键点和实现方式:

编辑
2023-11-09
linux
00

SRAM(静态随机存取存储器)是一种具有静态存取功能的内存,不需要刷新电路即可保存内部存储的数据。它的速度非常快,但集成度较低。SRAM主要用于CPU与主存之间的高速缓存[1]

除了SRAM,还有其他类型的缓存,包括:

编辑
2023-11-09
操作系统
00

CPU是如何读写内存的呢?

  1. 程序员和编译器:CPU执行指令是由程序员和编译器来告诉CPU去读写内存的[1]。程序员使用高级语言编写程序,编译器将程序翻译为机器指令,这些机器指令告诉CPU如何读写内存。

  2. 机器指令:CPU根据机器指令中包含的内存地址或PC寄存器中的下一条指令地址来访问内存[1]。在精简指令集架构下,有特定的Load/Store指令来读写内存;而在复杂指令集架构下,一条指令可以直接操作寄存器或内存中的数据。