- 浏览: 147960 次
- 性别:
- 来自: 杭州
-
最新评论
-
luoshi0801:
重0.9.1开始就不需要了
jstorm -
java.jianan:
请问哪个版本开始 完全基于java, 不需要安装 zoreM ...
jstorm -
luoshi0801:
嗯,netty也是基于nio的,出于简单原则没有考虑过多依赖, ...
日志agent解决方案 -
cssuger:
建议使用NIO吧如果没有用过nio,使用netty网络通信组件 ...
日志agent解决方案 -
adofu:
赞!!的很
jstorm
文章列表
Tlog采用了hbase+云梯的存储方案,分别对应实时和离线的数据服务,它们在tlog中的场景描述为:
实时服务—如查看近2分钟某应用的服务调用情况;检索一笔彩票订单目前的流程状态。它们的特点是数据粒度细、实时性要求高、不能重复计算或重复计算结果不一致、稳定性差
离线服务—如统计昨天提供调用次数最多的前10个服务;分析前一个月里售出彩种ID=1的总额最高的代理商和最低代理商,金额分别是多少。与实时服务相反,它们的特点是数据粒度粗、时间跨度大、能重复计算、结果一致稳定
异步hbase包asynchbase-1.4.1.jar,maven的pom如下:
<dependency> <groupId>org.hbase</groupId> <artifactId>asynchbase</artifactId> <version>1.4.1</version></dependency>
HBaseClient client = new HBaseClient("test036083.sqa.cm4.tbsite.net");
//生 ...
《大数据》这本书并不是专业技术书籍,它更像是一部历史纪传体,描述了19世纪以来美国政府、社会、公民在信息IT技术潮流中扮演的角色及发挥的作用,从一个行业的视角反映了美国的民主文化、经济政治等客观因素对技术浪潮产生的影响和推动作用。一、以法立国,以数治国个人认为,当下的一个文明社会,首先应该是一个法制的社会。俗话说“无以规矩、不成方圆”就是这个道理。美国之所以敢以文明社会自居,离不了它们的立国根本“三权分立”
三种权利相互制约、相互扶助,最大程度上限制了专制独裁的出现,构成了国家法制的基础。一条法律是如何产生的呢?这得要看国会的立法步骤:引入法案(众议员)->举行听证会形成草案(分委 ...
java序列化之protobuf
- 博客分类:
- java技术
一年多前做ppt,是关于protobuf的原理介绍和性能测试对比
在利用mapred分析大数据时,程序中常常会引入hdfs上一些“辅助数据”,通常的做法在mr的启动前加载这些数据形成cache以提高效率,而mr在大并发下去访问hdfs的同一文件可能存在性能瓶颈,DistributedCache可以帮助解决。
DistributedCache</code> is a facility provided by the Map-Reduce framework to cache files (text, archives, jars etc.) needed by applications.
添加cacheFile:
...
hive中自定义RegexSerDe尝试
- 博客分类:
- hadoop相关
当原始数据中包好了诸如'\u0001'、'\u0002'、'\u0003'等hive默认的column分隔字符时,在select数据时就可能出现数据格式错乱的情况,为了避免这类现象,可以用自定义的RegexSerDe规避这类特殊字符。
例子:
ac18148213512592717614403|135125 ...
将hdfs文件导入hive表
- 博客分类:
- hadoop相关
hive sql对hdfs的操作最终都会转化为mr任务,下面介绍如何将已经存在的hdfs文件“导入”hive表,很简单
条件及要求:
1)hdfs文件为经过lzo压缩的seqFile
2)seqFile数据样例
127.0.0.1 ae8186613401633040361974|1340163304040|0.1|hsf.qa.test|yuanfeng|test_07_01 其中key是hostIp, value为一条日志,格式为:traceid|time|rpcid|appname|querykey|msg
3)hive表是外在分区表
...
线上运维
- 博客分类:
- 线上机器性能简单查看方法
1.登录负载高的机器,利用top命令查看 发现最耗cpu的进程ID是17221, 并dump线程:jstack 17221 >> jstack.log
2.利用 top -p 17221 -H查看该进程下所有线程
发现性能损耗最大的线程ID是17260
3.echo "obase=16;17260" | bc ,将线程ID转化为16进制
大写字母变小写,前面加0x后得到:0x436c
4.在jstack.log中查找0x436c 可以发现目前线程被阻塞到哪里。
总结:可以反复多dump几次线程进行比较
...
观察者模式:定义对象间的一对多依赖,当一个对象状态改变时,所有依赖它的对象都会收到通知并自动更新
观察者获得更新状态的方式有“推(
push
)”和“拉
pull
”两种方式,前者认为更合理,因为可以一次性给到观察者需要的数据;而后者对观察者更自由,可以决定什么时候去拿,拿什么样的数据,前提是主题需要定义一些列
getter
方法。注意,程序不能依赖观察者被通知的顺序
装饰者模式:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案
装饰者反映出被装饰的组件类型,因为它们具有相同的接口。该模式可以通过组合和委托在运行时动态地加上新的行为
...
linux系统性能监控常用命令
- 博客分类:
- 技术方法
一、Linux服务器性能关注点
1)CPU
-> load:表示cpu在一段时间内正在处理以及等待处理的任务之和统计信息,简单可理解为cpu正处理的线程数和能同时处理的线程数的比值。一般认为load值的安全上限为cpu的个数
-> run queue:表示cpu维护的线程运行队列。在多核系统中,每个cpu都将维护这么一个队列,其长度值越大表明cpu负载越高,load指标便基于此统计而来
-> utilization:cpu使用率,由如下部分组成。后面一般是cpu被充分利用的比值分布
user 60%~70%
...
重构—对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。
代码坏味道
常用重构手段
Duplicated重复代码
上学期间研究了下软件执行网络的动态拓扑特性,实验了一些在函数粒度上可行的网络构造方法,这里总结下,感觉对分析开源软件代码有一定帮助。废话不多说,主要分为c/c++和java两种:
(1) 基于Gnu/Gprof运行时剖析工具
Gnu/Gprof是类Unix平台下对c/c++开源项目的一个profile分析工具,它能在程序运行过程中记录下函数间的调用关系,每个函数被调用的次数,每个函数消耗的时间等代码级信息。它的实现原理是通过编译和链接源程序的时候在gcc编译器的命令行参数中加入“-pg”调试选项,gcc编译器就会在程序的每个函数中加入一个名为“mcout”(或“_mcount”, ...