摘要: FDFS版本为5.031、首先在eclipse之中创建一个C/C++工程,取名为FastDFS_v5.032、将FastDFS源码解压后拷贝到新创建的工程目录下,然后在ecipse之中刷新下工程就可以看到新拷贝如的文件如下:3、修改工程目录下的make.sh,增加定位到绝对目录,并且去除编译优化(使... 阅读全文
posted @ 2014-08-19 17:22 chang290 阅读(865) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://blog.plotcup.com/a/129最近一直用go写一个项目,本想在mac上用gdb调试一下,但xcode4.6带的gdb版 本还是太低了,不支持go,只好自己安装一个。本以为直接brew install gdb就 完事了,后来发现不是那么回事,还要给gdb制作证书签名... 阅读全文
posted @ 2014-08-05 10:23 chang290 阅读(2488) 评论(0) 推荐(0) 编辑
摘要: 如果想通过eclipse来调试或者查看Cassandra的代码,将其project导入到eclipse之中不愧是个好选择。下面将讲述将2.0.8 版本导入elcipse的过程。 该篇文章主要参考的官方文档为:http://wiki.apache.org/cassandra/RunningCas... 阅读全文
posted @ 2014-07-11 10:26 chang290 阅读(1087) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://wiki.apache.org/cassandra/RunningCassandraInEclipseEclipse is open source. Download Eclipse fromhttp://www.eclipse.org/downloads/. There is... 阅读全文
posted @ 2014-07-11 10:03 chang290 阅读(626) 评论(0) 推荐(0) 编辑
摘要: node之中连接redis使用的redis模块,虽然好用,但是有些地方还是需要注意。npm install redisredis client 行为:1、客户端执行过程中断网的情况 由于原本连接正常,断网后socket无法主动检测到,因此TCP进入不断的重传,ubuntu系统大概在1000秒左右返回ETIMEOUT。 由于redis客户端没有等待回复超时时间,所以会等待到TCP超时才最终导致超时。2、重连接机制:当服务端异常断开会导致重连接,而若是客户端主动断开则不会重连接 如下两种情况表示客户端主动断开: 1)向服务端发送quit命令 2)调用客户端类的end... 阅读全文
posted @ 2014-03-15 09:47 chang290 阅读(3873) 评论(0) 推荐(0) 编辑
摘要: 问题:线上的写日志操作非常频繁,想统计每秒写了多少行数据?假如没法送一个消息写一个日志,问题也就变成了,每秒发送多少消息了。日志采用log4js书写,格式如下:[2014-03-10 11:23:33.548] [INFO] lac -[2014-03-10 11:23:33.551] [INFO] lac - [2014-03-10 11:23:33.563] [INFO] lac - [2014-03-10 11:23:33.569] [INFO] lac - [2014-03-10 11:23:33.572] [INFO] lac - 思路:依次读取日志的每一行,解析出时间字段,如11: 阅读全文
posted @ 2014-03-10 16:34 chang290 阅读(1133) 评论(0) 推荐(0) 编辑
摘要: 使用SED命令sed称为流编辑器,命令格式如下:sed option script file-e script #指定多个命令-f script_file #指定命令文件-n #不需要为每个命令产生输出1)s替换命令:使用第二个文本字符串替换第一个两个斜杆之间指定的文本sed 's/dog/cat/' data1 #在data1之中使用cat替换dogsed -e 's/dog/cat/; s/brown/green/' data1 #在data1之中执行两个替换,注意两个s命令之间需要使用分号隔开#s命令默认只能替换每行首次匹配字符#可以使用替换标记来进行灵活 阅读全文
posted @ 2014-03-07 14:20 chang290 阅读(571) 评论(0) 推荐(0) 编辑
摘要: 使用Linux作为长连接的web服务器时,为了增加服务的容量,以及处理性能,需要修改一些参数。一、多进程绑定CPU 1、使用taskset命令可以绑定进程到指定CPU,以减少多核CPU环境中,单进程在多个CPU之间却换运行而产生的CPU上下文却换。 taskset参数: -p 指定已存在进程的pid,而不是启动一个进程;同时该命令还返回该进程当前的CPU-list掩码,如:0x00000001is processor #00x00000003is processors #0 and #10xFFFFFFFFis all processors (#0 through #31) -c... 阅读全文
posted @ 2014-02-18 19:03 chang290 阅读(2045) 评论(0) 推荐(0) 编辑
摘要: 为了方便记忆,特将IO中涉及的类进行整理如下:1、File类 提供了目录操作,查看文件属性等。2、java IO类层次面向字节流的类为InputStream、OutputStream;面向字符流的类为Reader、Writer可以使用 InputStreamReader 将 InputStream-->Reader可以使用OutputStreamWriter 将 OutputStream-->WriterInputStream --->Reader|---ByteArrayInputStream --->CharArrayReader|---StringBufferIn 阅读全文
posted @ 2014-02-14 00:36 chang290 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 一、读取参数$0 程序名称$1 第一个参数$2 第二个参数,依次类推可以使用 basename 来读取程序名称:basename $0可以使用 dirname 来读取第一个参数的目录:dirname $0在使用参数之前应该尽量测试参数 [ -n "$1" ] 由于需要将参数作为字符串因此添加引号特殊的参数变量:$# 表示参数个数,${!#} 读取最后一个参数(由于不能在大括号中使用$符号,因此使用!代替)$* 将所有参数作为一个对象$@ 将所有参数使用空格分隔的多个对象(因此若一个参数包括空格,应该使用引号)shift 移位,将$1->$0, $2->$1 .. 阅读全文
posted @ 2014-01-22 17:55 chang290 阅读(649) 评论(0) 推荐(0) 编辑