04 2016 档案

摘要:hiredis的pipeline实现 使用方式 发送命令 通过连续调用 redisAppendCommand(context, cmd) 将命令拼接成一个长字符串,这个字符串包含所有的命令,且符合redis协议。 字符串拼接过程,如果原字符串空间不足了,就会触发内存再分配和拷贝动作。这是由sds.c 阅读全文
posted @ 2016-04-27 19:21 米开兰基罗 阅读(3493) 评论(0) 推荐(0)
摘要:原GCC版本:4.4.7; 目标:升级GCC到4.8.2,以支持C++11。 获取GCC 4.8.2包:wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz; 解压缩:tar -xf gcc-4.8.2.tar.gz 阅读全文
posted @ 2016-04-21 14:31 米开兰基罗 阅读(920) 评论(0) 推荐(0)
摘要:1 Linux下Git和GitHub环境的搭建 第一步: 安装Git,使用命令 “sudo apt-get install git” 第二步: 创建GitHub帐号 第三步: 生成ssh key,使用命令 “ssh-keygen -t rsa -C "your_email@youremail.com 阅读全文
posted @ 2016-04-20 13:45 米开兰基罗 阅读(173) 评论(0) 推荐(0)
摘要:记录linux小技巧 阅读全文
posted @ 2016-04-18 15:53 米开兰基罗 阅读(253) 评论(0) 推荐(0)
摘要:数据没有被读取又开始下一次循环 没有设置超时导致死循环 惊群现象 阅读全文
posted @ 2016-04-07 14:10 米开兰基罗 阅读(486) 评论(0) 推荐(0)
摘要:很有意思,这么有名的事情,昨天才亲身经历了。 隔壁小王继续用google perftools 排查cpu占用率。先说明一下场景。多服务进程阻塞在select上,这个select是和一个消息队列对应的,一旦有消息进入队列,select就唤醒阻塞的进程,从队列中取消息处理。发现select(__sele 阅读全文
posted @ 2016-04-07 14:09 米开兰基罗 阅读(264) 评论(0) 推荐(0)
摘要:nar流量测试命令 netperf带宽测试工具 redid-benchmark nmon CPU、带宽监控工具 google perftool 找到最耗cpu的函数。 https://github.com/gperftools/gperftools.git yum install autoconf 阅读全文
posted @ 2016-04-07 14:07 米开兰基罗 阅读(205) 评论(0) 推荐(0)
摘要:网络带宽影响redis效率。对于100M的内网,redis单链接每秒处理约2000请求,当带宽被占用30到40M时,处理数降为约500,使用netperf工具将带宽占满,处理数降为250。因此,带宽必须足够大才能确保redis效率恒定。 对所需内网带宽的估算。测试环境中,3x2000TPS占用约30 阅读全文
posted @ 2016-04-05 11:15 米开兰基罗 阅读(998) 评论(0) 推荐(0)