3 wendowswd

尚未进行身份认证

暂无相关简介

等级
TA的排名 21w+

RCU锁机制

背景为了保护共享数据,需要一些同步机制,如自旋锁(spinlock),读写锁(rwlock),它们使用起来非常简单,而且是一种很有效的同步机制,在UNIX系统和Linux系统中得到了广泛的使用。但是随着计算机硬件的快速发展,获得这种锁的开销相对于CPU的速度在成倍地增加,原因很简单,CPU的速度与访问内存的速度差距越来越大,而这种锁使用了原子操作指令,它需要原子地访问内存,也就说获得锁的开销与访...

2019-05-26 15:57:07

git更新代码及相关操作

git更新代码克隆自己仓库的代码如果已经克隆则增加远程原始主库分支到本地仓库地址: git remote add raid_master git@xxx.gitgit remote add xxx_master ssh://git@xxx.git如果已增加远程分支,直接fetch原始分支git fetch xxx_master合并两个版本git merge x...

2019-05-26 14:00:56

Linux修改进程能打开最大文件数(Could not set limit for ‘nofile’: Operation not permitted)

/proc/sys/fs/file-max –系统级别所有进程可打开的文件数/proc/sys/fs/nr_open –定义了file-max允许被修改的最大值,file-max不可以超过该值( ***为自己设置的文件数)a)       修改/etc/sysctl.conf增加:fs.file-max =***fs.nr_open = ***即可修改内核的配置b)  

2018-01-15 19:56:44

Centos7.4安装编译nbd模块错误(modprobe: FATAL: Module nbd not found.)

查看centos版本cat/etc/redhat-release#-> CentOSLinuxrelease7.4.1708(Core)查看自己内核版本uname-r      #->3.10.0-693.el7.x86_64  开始安装编译模块yuminstallkernel-develkernel-headerscd/tmpw

2018-01-15 19:33:36

centos7下sheepdog的简单使用

1.启动corosync、sheepdog

2017-11-15 15:42:14

centos7下sheepdog环境的搭建

1.epel的安装epel全称Extra Packages for Enterprise Linux,由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。弥补官方的rpm repository提供的rpm包往往是很滞后的,的不足。1、 如果以前安装过,则

2017-11-13 10:41:47

分布式系统sheepdog之dog执行流程

dog部分主要是执行客户端的命令行请求,然后对命令进行解析,通过指定socket发送请求到sheep端,将请求交sheep端处理。具体流程请参考下图。init_commands(&commands)函数将dog支持的命令都初始化在commands中进行调用,包括对vdi、cluster、node的命令操作,setup_commands()函数先比较主命令,然后比较subvommma

2017-11-09 20:06:35

分布式系统sheepdog之sheep启动流程

1、sheep启动启动过程中会有一些初始化的工作,对于基本目录的初始化,对于obj、epoch、journal路径的初始化,以及对于集群和工作队列的初始化。下图可以看到sheep基本的启动流程2、创建监听窗口通过socket创建来自客户端的请求,注册对应的listen_handler和client_handler事件,对请求进行相应的处理。相关处理函数的函数指针赋值给f

2017-11-09 18:20:02

strtol,strtoll,strtoul, strtoull字符串转化成数字

名字:strtol, strtoll, strtoul, strtoullconvert a string to a (signed, unsigned ) long integer string声明:#include ( 这个是C标准库,与linux无关。这套函数是通用的。)long int strtol(const char *nptr, char **

2017-10-31 09:57:29

daemon 守护进程

什么是守护进程?守护进程(Daemon Process),也就是通常说的 Daemon 进程(精灵进程),是 Linux 中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是个特殊的孤儿进程,这种进程脱离终端,为什么要脱离终端呢?之所以脱离于终端是为了避免进程被任何终端所产生的信息所打断,其在

2017-10-27 14:21:39

Linux内核链表 ——list相关内容

链表数据结构的定义很简单:struct list_head { struct list_head *next, *prev;};

2017-10-26 10:28:16

Python lambda介绍

在学习python的过程中,lambda的语法时常会使人感到困惑,lambda是什么,为什么要使用lambda,是不是必须使用lambda?  下面就上面的问题进行一下解答。  1、lambda是什么?    看个例子:     1 g = lambda x:x+1  看一下执行的结果:   g(1)  >>>2  g(2)

2017-10-25 19:52:26

(Python)异常处理try...except、raise

一、try...except有时候我们写程序的时候,会出现一些错误或异常,导致程序终止。例如,做除法时,除数为0,会引起一个ZeroDivisionError例子:1234a=10b=0c=a/bprint "done"运行结果:T

2017-10-25 19:51:37

分布式系统sheepdog整体框架分析

特点:采用无中心节点的全对称架构,不用元数据服务器,无单点故障,存储容量和性能可线性扩展;新增节点通过简单配置可自动加入,数据自动实现负载均衡;节点故障时,数据可自动恢复; 由corosync完成集群成员管理和有关集群消息传递,比如对于节点加入删除等情况检测;由Qemu VM作为Sheepdog的客户端,进行快照克隆、创建虚拟卷等操作命令的执行;由gateway

2017-10-25 10:35:25

epoll机制:epoll_create、epoll_ctl、epoll_wait、close

在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,linux/posix_types.h头文件有这样的声明:#define__FD_S

2017-10-24 09:20:52

共享内存 shmget()、shmat()、shmdt()、shmctl()

下面将讲解进程间通信的另一种方式,使用共享内存。一、什么是共享内存顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc()分配的内

2017-10-23 17:10:39

各类分布式存储系统简介

本地文件系统如ext3,reiserfs等(这里不讨论基于内存的文件系统),它们管理本地的磁盘存储资源、提供文件到存储位置的映射,并抽象出一套文件访问接口供用户使用。但随着互联网企业的高速发展,这些企业对数据存储的要求越来越高,而且模式各异,如淘宝主站的大量商品图片,其特点是文件较小,但数量巨大;而类似于youtube,优酷这样的视频服务网站,其后台存储着大量的视频文件,尺寸大多在数十兆到数吉字节

2017-10-23 15:31:26
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!