博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fastjson 在HiTSDB中的应用
阅读量:6436 次
发布时间:2019-06-23

本文共 616 字,大约阅读时间需要 2 分钟。

HiTSDB协议使用json作为轻量级的数据交换语言。

Jackson是最为广泛使用的Json格式数据的生成和解析框架之一。
HiTSDB服务端默认使用Jackson。
本文主要分析了Jackson对HiTSDB性能的影响以及提高方案

先来看一下Java性能tuning 利器jmc的分析结果:

哇, 排到了第二位,值得投点精力进去了。

搭个环境看看机器的资源消耗:

写入TPS

24Core, 96G物理机,100万TPS下测试, CPU消耗到了40+。

Jackson CPU 占用

FastJson 应用

第一弹:

换成Fastjson的大利器,BeanToArray映射模式。

由于HiTSDB的写入字段固定并且有序

[metric,timestamp,value, tags, tsuid, granularity, aggregator]
所以解析可以节省json key的部分。

效果不错, 大部分CPU 到了40-。

第二弹:

忽略optional字段;Value采用Double类型

由于tsuid, granularity, aggregator这三个字段是optional的,所以可以省略解析。

value字段默认是String,由于目前支持数值型的技术,可以存储成Double类型

最终采用FastJson CPU 占用稳定在30+。

结论:

HiTSDB采用Fastjson后,CPU消耗比降低了10点左右

转载地址:http://asega.baihongyu.com/

你可能感兴趣的文章
切割nginx日志
查看>>
LDAP常用命令解析
查看>>
Cobbler体验小记
查看>>
storm详解
查看>>
[MySQL 优化] 移除多余的checksum
查看>>
JS中的“!!”
查看>>
浅说《测试用例》----给测试新手的
查看>>
GridView实战二:使用ObjectDataSource数据源控件(自定义缓存机制实现Sort)
查看>>
网站安装打包 软件环境检测与安装[二] 下
查看>>
WWDC 2013 Session笔记 - iOS7中的多任务
查看>>
android被逼学习布局管理器
查看>>
深蓝词库转换1.2版本发布——支持紫光拼音和拼音加加
查看>>
深入理解Java内存模型(三)——顺序一致性
查看>>
【机房重构】一步一步往上爬——不仅仅是三层
查看>>
固定UILabel宽度分行显示
查看>>
(三十)java多线程一
查看>>
【原】a.class与a .class的区别
查看>>
android 减少图片出现oom错误
查看>>
Linux_CentOS-服务器搭建 <六>
查看>>
[bmgr]android应用数据备份以及还原
查看>>