笔记
文章平均质量分 58
XZY028
IT民工
展开
-
go语言hello world
vim hello_world.gopackage main //package main指明这个文件属于那个包,名为main的包比较特殊,他用来定一个独立的可执行程序。//import告诉编译器此源文件需要倒入哪些包,必须精确的倒入所需要的包,不能少导,这点和C语言不一样,倒入过多导致编译不过。import( "fmt")func main(){ //这个{必须和main在同一行否则爆错 fmt.Println("hello world!")}编译go文件:go bu原创 2021-09-15 10:36:12 · 332 阅读 · 0 评论 -
单个虚拟机部署三个etcd实例/一个ectd实例
1、安装etcd:yum install etcd2、查看etcd版本:etcd --version3、在一个目录下创建三个文件(etcd1_conf.yml,etcd2_conf.yml,etcd2_conf.yml)和三个文件夹(etcd1/data,etcd2/data,etcd3/data)分别存放三个etcd实例的配置文件和其对应的运行目录。etcd1_conf.yml内容name: etcd1data-dir: /home/test/etcd_conf/etcd1..原创 2021-09-14 18:45:25 · 1154 阅读 · 0 评论 -
C/C++代码中调用golang的接口。
一、C代码调用go接口。1、前提是golang已经可以提供一些接口,此时需要在C代码中调用这些接口。或者第三方模块是golang写的,则需要把第三方编译成so文件,然后再C代码汇总访问其暴露出来的接口。比如这里我让golang代码提供函数功能,并且将自己编译成so动态链接库,在C代码中调用这个库中的接口。1.1、 golang提供的接口,文件名:autolibary.go,注意这里“//export Func”这句话一定要有,否则一会链接找不到接口。package mainimpor.原创 2021-09-13 18:20:41 · 4167 阅读 · 0 评论 -
macOS 安装emacs
1、下载页面:https://www.gnu.org/software/emacs/download.html比如安装26.2版本2、.bash_profile中增加:alias emacs="/Applications/Emacs.app/Contents/MacOS/Emacs -nw"3、source.bash_profile...原创 2019-04-16 11:07:07 · 910 阅读 · 0 评论 -
编译Rocksdb
一般情况下clone rocsdb后按照说明直接make static_lib是没有问题的。但是如果直接make -j32全部build的话(就是要编译起配套的工具如db_bench,test)之类的话,需要依赖gflags gflags-devel glog gtest等。但是我在最新的rocksdb编译时候总是出现./util/gflags_compat.h:11:26: error: ‘...原创 2019-03-25 20:35:24 · 2428 阅读 · 0 评论 -
怎么理解分布式系统中的CAP理论
怎么理解分布式系统中的CAP理论:1、如果数据只是放在分布式系统的一个节点上,那么如果存在节点间网络故障,导致其他节点和该节点之间存在物理上分区了,那么这些节点上则不能访问到这个数据,所以分布式系统是不允许这样情况发生的。所以分布式系统需要解决这个问题,所以就是所谓的分区容错性,也就是这里说的P(Partition tolerance).2、所以为了解决这个问题,一般分布式系统需要把数据存...原创 2018-11-11 17:28:37 · 178 阅读 · 0 评论 -
安装Jenkins
1) Install Jenkins sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.reposudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.keysudo yum insta...原创 2018-02-08 20:56:53 · 127 阅读 · 0 评论 -
FIO组数据测试脚本
二、如果要测试多个类别的测试,我们一条一条的敲命令好想也不好,这里可以通过一个脚本来测试过个条目的方法:for bs in 4K 16K 32K 64K 256K;do for rwin read randread write randwrite; do for iodein 132; do原创 2017-05-12 16:34:03 · 1671 阅读 · 0 评论 -
C++11中function和bind绑定函数的理解--其中可能存在理解错误。这里只是粗糙理解而已。
NULL原创 2017-05-12 11:17:43 · 687 阅读 · 0 评论 -
C++理解
1、C++的容器分为两种类型: 一种叫顺序容器,比如vector, list,deque;一种是关联容器,比如map和set。2、vector其实就是一个可变数组,具有内存顺序存放的特点。需要包含头文件 include vector的遍历可以有两种方式: 一种是 int len=vec.size(); for (i = 0; i < len; i++) { cout<< v原创 2017-04-09 00:56:54 · 272 阅读 · 0 评论 -
笔记-杂乱
SLAB slab的机制就是每种大小片段的内存会申请一个叫slab的cache,但是此时这个缓存中没有任何数据,不同大小的片段对应不同的cache。这些cache使用一个链表链接。在每个cache的内部通过三个链表管理着数据的分配和释放。空链表表示一个页或者多个连续的页中分配的小对象(slab)都是空闲的,分配的时候先去问partial链表是否有空的slab供分配。如果没有就去free链表,每个连原创 2017-03-20 22:43:31 · 488 阅读 · 0 评论 -
ceph笔记
librbd:RBD rbd; //操作rbd的实例对象—这里librbd是namespace,RBD是类名 librados::IoCtx io_ctx, dest_io_ctx; //与pool关联的上下文 librbd::Image image; //镜像librados::RadosClient librados::IoCtxImplObjecter *objecter;1原创 2017-03-20 17:19:05 · 440 阅读 · 0 评论