自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

转载 glusterfs内存池的分配(值得看)

http://www.cnblogs.com/brucewoo/archive/2012/04/28/2475088.html上一篇博客详细分析了GlusterFS之内存池的实现技术,今天我们看看GlusterFS是怎么使用这个技术的。第一步:分配和初始化:cli进程在初始化的过...

2018-07-13 10:31:35 458

转载 select、poll、epoll之间的区别

http://www.cnblogs.com/Anker/p/3265058.html  select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作...

2018-07-13 10:29:49 193

转载 notify机制

notify机制 通知链技术可以概括为:事件的被通知者将事件发生时应该执行的操作通过函数指针方式保存在链表(通知链)中,然后当事件发生时通知者依次执行链表中每一个元素的回调函数完成通知。 一、notify定义struct notifier_block { notifier_fn_t no...

2018-06-20 09:16:13 2148 1

转载 epoll

首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。    不管是文件,还是套接字,还是管道,我们都可以把他们看作流。    之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;...

2018-06-19 14:12:31 148 1

转载 argc和argv的用法

main(int argc,char *argv[ ])argv为指针的指针argc为整数char **argv or: char *argv[] or: char argv[][]main()括号内是固定的写法。下面给出一个例子来理解这两个参数的用法:假设程序的名称为pro...

2018-06-19 13:56:49 15170 3

转载 glusterfs存储池用完

       在glusterfs存储池里创建文件时,在选择向哪个子卷上创建之前(在函数dht_mknod、dht_create或dht_mkdir里)会调用dht_get_du_info(使用statvfs)获取各个子卷的剩余空间和可用inode数量。&nbs...

2018-06-15 13:56:27 277 1

转载 epoll模型的使用

epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为...

2018-06-14 14:19:48 279 1

转载 Glusterfs的rpc模块实现(第四部分)

第三节、rpc通信过程分析前面两个小节分别对rpc服务端和客户端的建立流程做了详细的分析,也就是说rpc客户端和服务器端已经能够进行正常的通信了(rpc客户端已经通过connect链接上rpc服务器了),那么这一小节主要根据一个实际的例子来分析一个完整的rpc通信过程。下面以客户端创建逻辑卷(volume...

2018-06-14 14:07:08 392

转载 Glusterfs的rpc模块实现(第三部分)

第二节、rpc客户端实现原理及代码分析rpc客户端主要发起一个rpc请求,执行完rpc请求以后就退出rpc,下面分析客户端rpc请求建立的整个过程。Rpc客户端请求建立的第一步是执行cli_rpc_init函数,主要实现代码如下: 1 this = THIS;//取得本线程的xlato...

2018-06-14 14:06:01 371

转载 Glusterfs的rpc模块实现(第二部分)

二、Glusterfs的rpc模块实现第一节、rpc服务器端实现原理及代码分析1.rpc服务初始化(rpc/rpc-lib/src/rpcsvc.c)Rpc服务的初始化工作在函数rpcsvc_init中实现的,实现代码如下: rpcsvc_t * rpcsvc_init (glusterfs_ctx...

2018-06-14 14:04:30 484

转载 glusterfs之rpc-01

一、RPC概述第一节、RPC结构网络RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序...

2018-06-14 14:02:26 159

转载 利用RPC快速实现分布式系统

一、概述 在传统的编程概念中,过程是由程序员在本地编译完成,并只能局限在本地运行的一段代码,也即其主程序和过程之间的运行关系是本地调用关系。因此这种结构在网络日益发展的今天已无法适应实际需求。总而言之,传统过程调用模式无法充分利用网络上其他主机的资源(如CPU、Memory等),也无法提高代码在实体间...

2018-06-14 14:00:47 452

转载 Linux新增磁盘,分区,格式化

原文链接:http://blog.csdn.net/xyang81/article/details/51745683 系统环境:CentOS7 64位 mini版 场景:在虚拟机中添加一块40G的SCSI硬盘,分成一个扩展分区,格式化为ext3文件格式,挂载到/opt目录上1、查看磁盘信息lsblk1...

2018-06-11 16:29:35 284

转载 常用的数据校验方法

1.什么是数据校验 通俗的说,就是为保证数据的完整性,用一种指定的算法对原始数据计算出的一个校验值。接收方用同样的算法计算一次校验值,如果和随数据提供的校验值一样,就说明数据是完整的。2.最简单的检验 实现方法:最简单的校验就是把原始数据和待比较数据直接进行比较,看是否完全一样这种方法是最安全最准...

2018-06-11 16:26:57 9367

转载 nfs的两种启动方式

在第一期视频 : 第0课第7节_刚接触开发板之制作根文件系统及初试驱动.wmv ,因为要测试驱动,所以必须要把驱动程序弄到开发板里才行。 于是韦老师介绍了两种方式:1 仅用flash上的根文件系统启动后,手工MOUNT NFS使用NFS作为根文件系统来启动视频中只介绍了开发板这端uboot参数的设置,并...

2018-06-01 09:24:35 22633

转载 LUN详解

LUN概述LUN的全称是Logical Unit Number,也就是逻辑单元号,是SCSI中的概念。 我们用Target ID(也有称为SCSI ID的)来描述这些设备,设备只要一加入系统,就有一个代号,我们在区别设备的时候,只要说几号几号就ok了。 早期的SCSI系统采用3个ID,一个SCSI总线...

2018-05-31 16:32:39 10859

转载 GlusterFS架构与维护

官方网站:http://www.gluster.org/下载地址:http://download.gluster.org/pub/gluster/glusterfs/GlusterFS 外部架构    GlusterFS总体架构与组成部分如图2所示,它主要由存储服务器(BrickServe...

2018-05-30 09:29:24 450

转载 Gluster源代码阅读2--启动分析service glusterd start

修改/usr/lib/systemd/system/glusterd.service 里的log级别到TRACEEnvironment=”LOG_LEVEL=TRACE”可以查看更多log 当安装好gluster后,在/usr/sbin下面会有4个文件与之相关这4个文件,其实你会发现其中3个是指向同一个文件...

2018-05-30 09:25:35 223 1

转载 Gluster源代码阅读1--RPC与NFS

Gluster本质上是一个NFS(网络文件系统),NFS解释如下(摘自网络)Sun Microsystems公司于1984年推出了一个在整个计算机工业中被广泛接受的远程文件存取机制,它被称为Sun的网络文件系统(Network File System),或者简称为NFS。该机制允许在一台计算机上运行一个服务器,使对其上的某...

2018-05-29 10:03:37 252

转载 GlusterFS探究(一): dht,afr,fuse, mgmt 层 几个问题总结

 0, 跟踪学习 在dht层实现 的 rebalance 操作                 &nb

2018-05-29 09:59:25 1030 1

原创 glusterfs安装详解

Gluster 文件系统 3.3 管理员手册 使用gluster 文件系统前言本指南介绍如何配置,操作和管理Gluster的文件系统(GlusterFS)本指南是针对那些有兴趣在配置和管理GlusterFS系统管理员。本指南假定您熟悉Linux操作系统,文件系统的概念,GlusterFS概念和GlusterFS安装 一、介绍Gluster的文件系统GlusterFS是一个开源的集群文件系统能够扩展...

2018-05-29 09:53:59 3588 2

转载 linux编程-守护进程编写

linux编程-守护进程编写 守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待 处理某些发生的事件。守护进程是一种很有用的进程。 Linux的大多数服务器就是用守...

2018-05-29 09:46:36 148

转载 GlusterFS学习手记

对于分布式存储已经被越来越多的公司所应用,对于这方面的学习自然不能忽略,之前就也看过相关的内容,像红帽的GFS,google的googlefs,开源的现在也越来越多,像Fastdfs,ZFS,Lustre,Hadoop,GlusterFS。大概的也都接触了一下,Fastdfs号称小巧,速度快占...

2018-05-28 11:40:06 682

转载 比较重要的几个算法

奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提到他做了一个调查,参与者大多数是计算机科学家,他请这些科学家投票选出最重要的算法,以下是这次调查的结果,按照英文名称字母顺序排...

2018-05-28 11:38:41 1037

转载 哈希分布与一致性哈希算法简介

前言在我们的日常web应用开发当中memcached可以算作是当今的标准开发配置了。相信memcache的基本原理大家也都了解过了,memcache虽然是分布式的应用服务,但分布的原则是由client端的api来决定的,api根据存储用的key以及已知的服务器列表,根据key的hash计算将指定的key存储到对应的服务器列表...

2018-05-28 11:36:55 824

转载 CentOS7.0 开发模式安装

环境:CentOS7.0 开发模式安装1、tar -zxvf glusterfs-3.6.0.tar.gz2、./configure默认的模块如下如所示3、make && make install4、sudo vim /etc/glusterfs/glusterfsd.vol[plain] v...

2018-05-28 11:33:25 1475

转载 glusterfs源码框架分析03

3 GlusterFS之serverServer 在 host 上运行的应用程序为 glusterfsd,通过 ps –ef 查看进程信息可以看到一个brick 对应一个服务,一个服务对应一个监听端口。其进程信息为:/usr/local/sbin/glusterfsd --xlator-option nfs-volume-server.listen-port=24024-s localhost--...

2018-05-28 10:55:29 581

转载 glusterfs代码框架分析02

2 GlusterFS 之 damon通过 ps -ef 查看进程项,可以发现 damon 启动项详细情况为: /usr/local/sbin/glusterd -p/var/run/glusterd.pid。即可执行文件名称为 glusterd。仅一个参数-p该服务启动入口处为 glusterfsd/src/glusterfsd.c 的 main 函数,该入口也是 server 和 client...

2018-05-28 10:52:07 659 1

转载 glusterfs源码框架分析01

GLUSTERFS源 码 框 架 分 析01目录1 GlusterFS 之 GlusterFS 概括 1.1 glusterFS 源码目录分析1.2 glusterFS 工作时各个应用程序之间联系分析1.3 glusterFS(cli,deamon,server,client) 四方架构图1.4 架构图注释2 GlusterFS 之 damon 3 GlusterFS 之 server4 Glus...

2018-05-28 10:48:05 977 2

原创 centos7配置静态IP步骤

改动在IPADDR=20.0.0.22(你想设的IP)以及网关20.0.0.1

2018-05-08 11:04:02 113 1

转载 socket详解

Socket详解2016年09月03日 10:32:28阅读数:8913“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠soc...

2018-05-01 14:12:17 172 1

转载 c语言面试题

语言部分:语言部分一、简单编程,请用一句语句完成下列操作1.     位操作:将变量unsigned long register的0,4,6位清0 32位下:register&=0xffffffae分析:0,4,6清0;10101110对应着:1010对应a; 1110对应e2.     字符串操作:判断字符串char* str1是否起始位置包含char* str2的内容if(strstr...

2018-04-28 20:52:25 497 2

空空如也

空空如也

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

TA关注的人

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