自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 博客收藏1

https://normaluhr.github.io/2020/12/31/Effective-C++/ 【effective C++】

2024-10-05 11:40:24 128

原创 LevelDB总结

https://izualzhy.cn/archive.html?tag=leveldb ying的leveldb笔记总结

2023-10-19 16:56:16 496

原创 Ceph运维笔记

【代码】Ceph运维笔记。

2023-10-13 10:31:51 514

原创 使用ceph-deploy部署Ceph集群

使用了Ubuntu22.04安装ceph-deploy,因为python模块适配的问题,最多只能到python3.6(3.7以上可能也行,但是要去github上面下载ceph最新版本2.1.0)Ceph官方推荐部署已经把Ceph-deploy取消了,原因是Ceph-deploy在20年就不再维护更新了。执行这一步时,需要到对于host下创建一个磁盘分区,并且必须为空。所以使用Ubuntu18.04或以下版本部署最好。

2023-10-12 11:02:54 492

原创 Ceph--存储服务质量QoS

虽然已经具备QoS功能,但在平衡后端I/O资源的调度策略上还不是特别好。

2023-10-09 09:44:18 811

原创 Ceph--PG读写流程和迁移

对于纠删码而言,当涉及覆盖写时,如果改写的部分不足一个完整条带(指写入的起始地址或者数据长度没有进行条带对齐),则需要执行RMW,这期间需要多次执行补齐读、重新生成完整条带并重新计算校验块、单独生成每个副本的事务并构造消息进行分发(Write)、同时在必要时执行范围克隆和对PG日志进行修正,以支持Peering期间的回滚操作。如果删除head对象并且对象仍然被快照引用,则创建snapdir对象,同时生成一条创建snapdir对象的日志,并将head对象的OI和SS属性用snapdir’对象转存。

2023-10-08 18:07:37 562

原创 Ceph----纠删码

磁盘的空间利用率高实现更复杂性能更差。

2023-10-08 08:51:54 439

原创 Ceph--存储引擎BlueStore

又因为产生了新PG,需要存储到OSD中,因为原先老PG存放到OSD中时已经做了负载均衡,新PG的数据又是从老PG迁移过来的,所以新PG存放的OSD就和老PG相同,以减少数据的跨OSD迁移造成性能的损耗。BlueStore提供的读写接口都是基于PG粒度的,通过其提供的接口来操作PG下的某个对象,首先需要找到BlueStore中对应PG上下文和对象上下文,这两类上下文保存了关键的PG和对象的元数据信息,而且BlueStore通过KVDB固化这两类上下文至磁盘,接下来我们需要谅解这两类上下文的磁盘数据结构。

2023-10-07 16:17:20 959

原创 Ceph----CRUSH算法

包括了CRUSH算法的流程,介绍straw算法。

2023-10-06 10:46:46 357

原创 Ceph简要概括

首先Ceph会将一个文件A分为大小默认为4M的object(且有一个唯一编号文件名+序号),通过hash(object id) & mask(通常为osd的数量减一)得到PG id,最后通过CRUSH(PG id) --> (osd1,osd2,osd3) 将该PG存储到这三个osd中,其中一个为primary,剩下两个为副本。当Ceph存储集群设定的数据有两个副本时(一共存两份),则至少需要两个OSD守护进程,即两个OSD节点,集群才能到达active+clean状态。用于集群中所有数据与对象的存储。

2023-10-05 11:04:56 113

原创 MIT6.5840 分布式系统笔记

是一种计算机程序设计领域的优化策略。其核心思想是,如果有多个调用者(callers)同时请求相同资源(如内存或磁盘上的数据存储),他们会共同获取相同的指针指向相同的资源,直到某个调用者试图修改资源的内容时,系统才会真正复制一份专用副本(private copy)给该调用者,而其他调用者所见到的最初的资源仍然保持不变。这过程对其他的调用者都是透明的。此作法主要的优点是如果调用者没有修改该资源,就不会有副本(private copy)被创建,因此多个调用者只是读取操作时可以共享同一份资源。

2023-09-30 11:26:08 274 1

原创 精品博文~

零拷贝技术详解

2023-09-21 09:13:42 50

原创 linux高性能编程随记

3. 当写 buff 有数据,但是我们没处理(没发送出去),但是对相应fd进行epoll_mod OUT事件时,触发。3. 当读 buff 有数据可读时,我们不处理,但是对相应fd进行epoll_mod IN事件时,触发。读缓冲区有数据就一直触发(即epoll_wait时能检测到),没有就不触发。2. 当有新数据到达时,即读 buff 数据由 少 -> 多 时,触发;2. 当有数据被送走时,即写 buff 数据由 多 -> 少 时,触发;1. 当写 buff 从 满 -> 不满 时,触发;

2023-09-18 19:55:02 56

原创 【VS Code】“The ‘clang-format‘ command is not available. Please check your clang-format.“报错

快捷键shift+alt+f就可以自动格式化当前文件了。

2023-09-18 10:46:36 710

原创 CMU 15445 vs MIT6.824

对学习CMU 15445 和 MIT 6.824课程的总结

2023-07-11 09:34:06 1251

原创 MIT 6.824 Lab4 Sharded Key/Value Service

和15445的lab一样,最后一个实验的最后一个task没写完。但做完这几个lab以及课堂知识,也对分布式系统以及数据库的了解更深了一点,在做6.824lab的时候我常常回合15445相比,相比较而言15445lab中给定的约束更多,而6.824则留给了大家更多发挥的空间。

2023-06-28 17:40:17 289

原创 MIT 6.824 Lab3 Fault-tolerant Key/Value Service

MIT 6.824 Lab3 Fault-tolerant Key/Value Service 2023 spring

2023-06-27 10:52:02 241

原创 MIT 6.824 Lab2C 2D Raft

MIT 6.824 Lab2C 2D Raft Spring

2023-06-24 12:03:08 147

原创 MIT 6.824 Lab2B Raft

MIT 6.824 Lab2B Raft 2023Spring

2023-06-24 12:02:14 160

原创 MIT 6.284 Lab2A Raft

MIT 6.284 Lab2A Raft 2023Spring

2023-06-24 12:00:22 199

原创 MIT 6.824 lab1 Mapreduce

该文章为6.824(现6.5840) 2023spring lab1 Mapreduce的实现

2023-06-20 16:38:12 469

原创 MIT 6.824 2023spring 环境配置

source /etc/bash.bashrc 加载环境变量。

2023-06-16 14:41:50 669

原创 C++ 前向声明

前向声明指在A程序中引入新的类型B,但是B并不是一个完整清晰的类,因为我们只知道只是一个B类,但是我们不清楚它的具体函数接口实现以及成员变量;不能定义一个B的类型,只能使用指针和引用的方式;直到后面找到B的定义我们才真正直到B的具体实现,才可以调用它的实现方式;在a2.h中前向声明B,但没有使用B,第二种方式也可以在a2.h中加入#include “a1.h”,但是这样对于每个#include “a2.h”的文件,不管是否用到B,都需要编译一遍a1.h,降低编译效率。

2023-05-17 11:35:02 97

原创 记录C++中踩过的坑

在include中…

2023-05-16 22:29:09 98

原创 CMU 15445 Project 4 Concurrency Control

CMU 15445 2023spring Project4 Concurrency Control

2023-05-13 09:17:52 641

原创 github第一次上传文件

github 上传或者更新文件

2023-05-12 11:25:57 97

原创 CMU 15445 学习笔记

CMU 15445课堂笔记以及知乎asukaqaqzz的笔记

2023-05-06 21:05:33 2626

原创 CMU 15445 P3 Query Execution

CMU 15445 2023spring Project3 Query Execution

2023-05-04 20:45:17 2599 2

原创 解决虚拟机和主机互相ping不通问题

虚拟机能ping主机 主机ping不到虚拟机。

2023-04-24 22:22:34 353

原创 游双 Linux网络编程

阅读游双的linux网络编程笔记

2023-04-24 22:05:24 324

原创 C++ Primer 第五版

C++ Primer 第五版 学习笔记

2023-04-24 22:01:05 863

原创 Effective C++

阅读Modern Effective C++ 笔记

2023-04-24 21:09:46 158

原创 muduo笔记

阅读muduo笔记

2023-04-24 21:03:40 184

原创 CMU 15445 Project2 B+Tree

CMU 15445 2023spring Project 2 B+Tree

2023-04-24 20:49:13 1255 7

原创 CMU 15445 Project 1 Buffer pool

CMU 15445 2023spring Project 1 Buffer pool

2023-04-24 17:12:40 1096 2

原创 在linux系统下,下载安装配置vscode并成功运行一个C++项目

在linux系统下,下载安装配置vscode并成功运行一个C++项目,包括vim,g++编译的基本指令。以及使用cmake运行和配置vscode

2022-12-08 18:39:01 3950

原创 Clion安装boost库 并使用boost log

boost在CLion中使用

2022-12-01 20:03:21 1114

原创 学习--博客

2022-11-20 23:11:02 89

原创 vscode SSH连接腾讯云

2022-11-20 21:24:14 149

原创 tensorflow

Tensorflow之AlexNet构建2.AlexNet网络构建本网络采用了5个卷积层三个全连接层来构建该网络。增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;全新的 KaTeX数学公式 语法;增加了支持甘特图的mermaid语法1 功能;增加了 多屏幕编辑 Markdown文章功能;增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能...

2019-12-01 19:47:44 98

C++课程设计贪吃蛇.cpp

vscode中运行,运行良好,而且在c++课程设计上获得优的成绩,后期可以自己根据需求做一些更改,代码简单通俗易懂,拿来即刻直接运行。

2019-12-01

空空如也

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

TA关注的人

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