推荐阅读

ceph学习及部署使用

ceph介绍我们常见的存储需求可以简单归纳成3个:1.对象存储ObjectStorage2.块存储BlockStorage3.文件系统FileSystemceph则是一个满足了3种不同需求的存储开源解决方案,不仅有分布式存储的功能,还有不同的灾备机制,以及灵活的机制以对接到现有的各种虚拟化接口,使用户可以用简单的服务器+磁盘搭建有分布式存储特性的服务,还可以应用到自身的云平台当中。本例子我们会用”块存储“,服务作为搭建使用ceph的实验演示,选择这个作为实验对象是因为块服务可以直接对接到云平台的

更新时间: 2017-07-20 11:22:30 0

Hadoop学习与部署

Hadoop介绍Hadoop作为一个分布式的存储,计算平台,从底层到上层提供了丰富的开源项目,用户可以灵活选择组合搭配。HDFS是一个分布式的文件系统,MapReduce是一个分布式的程序框架。HDFS和MapReduce是本文档的研究对象,先从底层的HDFS,然后是上层的MapReduce。HDFS介绍MapReduce介绍新版的hadoop里面,MapReduce的代号是yarn主要单元介绍单元描述NameNode可以看成是HDFS的主机,保存了分布式文档的元数据,记录了文档分布在那些数据节

更新时间: 2017-07-20 10:59:00 0

人生苦短我用python[0x0B] 各种时间转换

背景时间转换是我们编程里面经常会遇到需求,我们往往无法记住每一种的转换方式代码,这篇文章整理了一些常见的时间转换函数以及例子,以供开发者需要的时候可以顺手翻查,提高编程效率。我们先来看看pythontime函数库的几个基本函数用法。常见time函数库函数的使用#导入时间库importtime#time函数--输出当前时间戳time.time()#1495788229.793839#localtime函数--获取当前时间以tuple格式返回time.localtime()#可以从返回的tuple里

更新时间: 2017-06-23 11:11:59 0

人生苦短我用python[0x0A] eval,exec,compile的使用

函数原型eval(expression[,globals[,locals]])python提供内置函数eval可以执行或者解释一串python表达式,这里的表达式仅限于一些运算操作,比如+,-,x,/等,不能进行类似函数调用。其中expression就是要执行的python表达式,globals和locals是可选项,分别用于指明要执行解释表达式的全局,局部属性,下面我们通过一个例子来演示这个eval函数。>>>x=1;y=2>>>x,y(1,2)>&g

更新时间: 2017-06-23 11:11:12 0

Osd基本启动过程

Osd基本启动过程:程序入口:src/ceph_osd.cc main(),通过查询正在运行的osd得知启动命令如下:/usr/bin/ceph-osd--cluster=ceph-i0-f--setuserceph--setgroupceph开始进入main函数1、argv_to_vec(argc,argv,args); 把以空格分割后的命令行参数“--cluster=ceph-i0-f--setuserceph--setgroupceph”放到一个vector里方便后面处理。2、global

更新时间: 2017-06-23 11:09:39 0

ceph编译 + gdb调试

一、对于automake版本1、./install-deps.sh安装依赖包2、./autogen.sh生成configure3、./configure生成makefile4、修改makefile,找所有O2行,把它换成-O0-Wall-g5、make二、对于cmake版本1、./install-deps.sh安装依赖包2、修改do_cmake.sh在cmake命令那一行加一个参数cmake-DWITH_TESTS=OFF-DBOOST_J=$(nproc)"$@"..    //否则会报tes

更新时间: 2017-06-23 11:08:00 0

程序员自我修炼(一) - 如何编写合格代码(上)

在文章的开头,我先给“合格的代码”来做个定义:满足要求定义的初始化规则代码清晰简洁,没有思维逆反的逻辑或者刻意为之的陷阱代码尽可能控制代码风险合理的代码注释合理的标准化接口定义合,杜绝误用或者滥用我先从一个实际例子来说起。有人可能会问:如果一个函数的长度被标准化要求严格限制在几十行以内,还不够清晰简洁么?可读性还会差么?我给出的答案是:会的。functionclean(tags){vardedupe={};for(vari=0;i<tags.length;i++){tags[i]=tags

更新时间: 2017-06-23 11:04:29 0

Nginx+Redis实现反向代理和Session共享(二)

Session在PHP默认存放形式1.PHP处理Session默认是创建会话数据文件,以文件的形式存储会话信息;2.通过查看<?phpechophpinfo();得知,Session的存放路径:session.save_path=/var/lib/php/session文件形式存放Session的劣势:1.如果用户数量非常大,文件操作的I/O开销就会很大,会严重影响系统的执行效率。2.如果多个系统直通之间需要共享session数据,而且系统之间是在不同的服务器上的,那文件存放方式就不可以实

更新时间: 2017-06-23 10:58:30 0

人生苦短我用python[0x09] 使用virtualenv隔离python环境

1.背景在开发python项目中,我们可能会遇到一种场景,在同一台机器上的python运行环境需要隔离,特别是在多人使用和存在不同版本库情况下,比如A开发人员用了库1.0,B开发人员用了库2.0,为了使系统默认的python环境不受污染,需要一个工具,能对python开发运行环境进行有效隔离。2.virtualenvvirtualenv则是解决了python开发运行环境隔离问题的一种解决方案,具体可以参考官网点击访问官网virtualenv实现了安装包的隔离,在某一环境下安装包不会影响其他的环境

更新时间: 2017-06-22 17:01:17 0

人生苦短我用python[0x08] 使用ctypes调用c语言接口

1.背景python作为解析语言大规模应用在各个领域,c语言作为系统级别的语言广泛应用在基础,系统,网络等底层服务当中,可以说python和c语言之间各有擅长和不擅长的地方,今天文章讨论的是,如何使用python开发的程序调用c语言写的库文件,使得两种语言得以互补。2.ctypesctypes是python自带的用于跟c语言做对接的库,里面提供了针对c语言数据类型,除此还提供了加载动态库和调用动态库函数的功能,比如在windows下可以加载dll文件并可以调用里面的函数接口,在linux下可以加

更新时间: 2017-06-22 16:54:06 0

微信关注

获取更多技术咨询