storm安装过程
storm的官方安装说明:https://github.com/nathanmarz/storm/wiki/Setting-up-a-Storm-cluster 本文主要介绍storm的单机版的安装测试,也是学习阶段,还没有机会搭建集群。
storm的官方安装说明:https://github.com/nathanmarz/storm/wiki/Setting-up-a-Storm-cluster 本文主要介绍storm的单机版的安装测试,也是学习阶段,还没有机会搭建集群。
要在hadoop上作一个mr程序,做一些统计工作。但是发现官网下载的2.3的库只有32位的,而我的机器系统都是64位的。用g++直接指定编译32位的程序又发现头文件依赖有问题,没法编译通过。所以就只能编译hadoop,编译后在服务上启动64位程序,再编译mr程序进行工作。下面是编译的过程和其中遇到的一些问题。
zz http://biancheng.dnbcw.info/c/73875.html
在你大量使用stl的各种容器时,你确定它们会按你想象的那样释放内存吗?你使用map存放1G的数据,当map clear后,它占用的空间释放了吗?
下面是一些统计数据:
写好了cpp的服务器后,测试是个问题,写cpp程序来测试好像不是很灵活,所以想用python脚本来写测试程序,记录一下过程。
首先是thrift的python程序库的安装,有些基础库需要安装后才能运行,在thrift的目录库目录中,选择py目录,使用root账户就可以直接安装了。
cd thrift-0.9.0/lib/py
python setup.py install
即可完成安装。当然安装完成之后也要记得测试一下,安装是否成功。
thrift的数据类型定义的时候和protobuf(后面简称pb)一样也有requried和optional标签,意义是类似的,required标示改消息在序列化之前必须设置该字段值,如果不设置则无法序列化,当然也就更无法反序列化,该标签标示的字段是必填字段;而optional字段则标示该字段可赋值也可以不赋值,当然不赋值的结果是在序列化之后的数据中该字段被标示为无值字段,就是说直接访问获取该值是不行的,必须先判断是否设置了该字段的值,再去读值;这样作的好处是在协议扩充和变更时可以较为灵活的设计程序,而且在传输上也就减少了不必要的字段传输。
shell字符串的截取的问题: 一、Linux shell 截取字符变量的前8位,有方法如下:
1.expr substr “$a” 1 8
2.echo $a|awk ‘{print substr(,1,8)}’
3.echo $a|cut -c1-8
4.echo $
5.expr $a : ‘\(.\\).*’
6.echo $a|dd bs=1 count=8 2>/dev/null
Copyright (c) 2007 - 2024, helight; all rights reserved.【 粤ICP备15029944号 】
模板来自 Bootstrapious. 移植到 Hugo 来自 DevCows.