自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 【存储引擎】日志结构化文件系统 Log-Structured File System

《The Design and Implementation of a Log-Structured File System》是 1992 年发表的一篇论文,在任职的公司所开发的分布式存储产品中,是加速引擎层的思想基础。文章对论文的核心章节进行了翻译、整理

2024-09-17 18:07:16 1318

原创 【Linux】内存结构和函数栈帧

在 main 函数栈帧里 a、b、ret 的位置是 a 最高、b 次之、ret 最低(%rbp-0x4 ~ %rbp-0xc)。

2024-02-20 20:25:45 1185

原创 【存储引擎】LevelDB 编译使用

目录中的 LOCK 是 leveldb 的文件锁。目录里 .ldb 后缀的文件就是上一篇文章里所说的持久化存储在硬盘中的 ssttable。用 Put 插入键值对 "test_key_A" - "test_value_a" 后,可以用 Get 接口,根据键 "test_key_A" 查询到存储的值 "test_value_a"。MANIFEST 文件包含的是 leveldb 的元信息,每次打开数据库,都会生成一个新的 MANIFEST 文件,新生成的 MANIFEST 文件有更大的版本号。

2024-02-20 20:01:58 1359

原创 【分布式】一致性算法 Raft

Raft 算法是共识算法(也叫一致性算法)的一种,用来解决分布式一致性问题,主要作为 Paxos 的替代算法。文章有一万多个字,对算法的主要内容进行了整理,加上了对关键问题的消化和理解,希望对大家学习 Raft 算法能提供一些帮助。

2024-02-18 23:06:56 1175 1

原创 【存储引擎】LevelDB 概述

从系统结构、读写流程、合并流程、适用场景对 LevelDB 作一个概述,作为后续文章的基础

2021-11-03 00:27:32 2153

原创 【网络编程】IO 多路复用 epoll

在【网络编程】IO 多路复用 select 实验的基础上,尝试对 epoll 进行使用

2021-10-12 18:30:00 241

原创 【网络编程】IO 多路复用 select

文章以【网络编程】TCP socket 单机通信实验 为基础,尝试对 IO 多路复用 select 接口进行使用

2021-10-11 23:52:00 2633

原创 【网络编程】TCP 连接的四种 WAIT 状态

文章以【网络编程】TCP socket 单机通信实验 为基础。对 TCP 连接中的四种 WAIT 状态进行分析实验。

2021-09-12 15:05:50 2134

原创 【网络编程】TCP socket 单机通信实验

​这是一个简单的 socket 编程实验,在主函数内创建 server 和 client 两个线程,实现单台机器上的 socket 通信,作为后续文章 IO 多路复用实验和【网络编程】TCP 连接的四种 WAIT 状态 的基础。

2021-09-04 14:31:59 994

原创 【C/C++】strncpy 拷贝短字符串到大内存的性能损耗分析

如果传给 strncpy 函数的拷贝长度限制 lenLimit(第三个参数)大于源字符串(第二个参数)的长度 lenSrc,则在将源字符串拷贝到目标地址空间之后,还会将目标地址空间中紧接着拷贝过去的源字符串的 lenLimit - lenSrc 长度的空间清零。可能造成越界(如果超过目标地址空间的大小)和无意义的性能损耗。

2021-08-14 23:43:19 775

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除