Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

Raft QA Folding Raft 只在非拜占庭的条件下才能正常工作非拜占庭条件 是指所有的服务器都是 宕机-停止 模型:即每个服务器要么严格遵循 Raft 协议,要么停止服务。例如,服务器断电就是一个非拜占庭条件,此时服务器会停止执行指令,则 Raft 也会停止运行,且不会发送错误结果给客户端。拜占庭故障是指有些服务器不好好...

TIMELINE3月11日开始投简历,接连投了四五个音视频岗秒挂,百度挂、字节三投三挂、牛客投网易被嫌弃webserver烂大街,故一边继续背八股、音视频,一边开始突击CMU15445。开始考虑放弃学了三个月的音视频方向 3月底投了最后一个字节的音视频岗,秒挂,转而投了快手基架、字节后端。彻底放弃音视频,只要是个C++沾边的岗就投 4月初接到了快手一面和字节一面(后端挂了被转到了基架岗),于...

内存缓冲池原理存储管理器中实现缓冲池。缓冲池负责将物理页面从磁盘中读入内存、或从内存中写回磁盘,使得DBMS可以支持大于内存大小的存储容量。页面读入缓冲池时,从free-list(空位页面)后lru_replacer中(未被访问的可替换页面)寻找空间,淘汰的dirty-page还需写回磁盘,page_table映射page到frame的关系 并行缓冲池的思想是分配多个独立的缓冲池,并将不同...

进程和线程线程与进程区别线程与协程区别 协程是一种用户态的轻量级线程,一个线程可以有多个协程,其特性在于CPU的执行权是由协程主动让出的,相比内核态线程而言,调度协程的时机开发者是比较清楚的 创建开销:协程的栈空间占用只有 2k~4k,在一个地址空间中可以运行 10w 级别的协程 切换开销:进程和线程切换时都涉及内核切换(陷入内核态运行调度程序);而协程调度由用户程序控制,只需要保存寄存器上...

网络分层模型OSI分层 应用层:为应用程序提供交互服务,通过调用应用层的不同协议实体,从而调用传输层服务来进行网络传输 HTTP/HTTPS、DNS、Telnet(远程登录服务协议) SMTP、POP3、FTP、TFTP(简单文件传输协议) 表示层:主要负责数据格式的转换,如加密解密、转换翻译、压缩解压缩等 会话层:负责建立、维持和终止会话,如服务器验证用户登录便是由会话层...

Redis线程模型Redis基于Reactor模式开发了自己的网络事件处理器,也就是文件事件处理器。它使用IO多路复用技术,同时监听多个套接字,当套接字的可读或者可写事件触发时,就会调用相应的事件处理函数。 Redis 使用的IO多路复用技术主要有:select、epoll等,会根据不同的操作系统按不同的优先级选择。 文件事件处理器有四个组成部分:套接字、I/O多路复用程序、文件事...

SQL与NoSQL关系型数据库采用了关系模型来组织数据, 关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织 优点:①容易理解,二维表比网状模型贴近逻辑世界 ②使用方便,支持SQL复杂查询 ③易于维护,通过完整性降低了数据不一致和数据冗余 ④支持事务 ⑤数据存在磁盘中可靠 实体完整性 每个元组唯一、可识别,不允许主键空/重复引用完整性 元组间...

数组堆排序123456789101112131415161718void adjust(vector<int>& a, int len, int i){ int l = i * 2 + 1, r = l + 1, maxId = i; if (l < len && a[maxId] < a[l]) maxId = l; if (...

运算符优先级 优先级 类型 运算符 0 一元后缀运算符 () [] ++ – -> . 1 一元前缀运算符 ++ – + - ! * & (type) sizeof 2 算术运算符 * / % > ± 3 位运算符 >> << 4 关系运算符 >= > ...

RTMP RTMP协议详解 一篇文章搞清楚直播协议RTMP 什么是 RTMP一种应用层的实时信息传输协议,对低延时和音视频同步有良好的支持。解决多媒体数据传输流的分包和多路复用的问题 message 消息:将数据封装成消息,是 RTMP 协议中的基本数据单元 chunk 块:将消息分包成更小的块,基于TCP网络传输 RTMP 设计思想 分包:可以将大的消息数据分包成小的块通过网络来进行...