文档章节

STORM 落入MONGO速度优化

吹比龙
 吹比龙
发布于 2017/03/15 12:47
字数 161
阅读 55
收藏 0

1、改为单独线程池异步落库

public class G3SaveVehToDB extends WTBaseSpringBolt {
	/**
	 * 注释内容
	 */
	private static final long serialVersionUID = 1L;
	private final List<GnssInfo> QUEUES = new LinkedList<GnssInfo>();
	private ExecutorService threadpool;

	@SuppressWarnings("rawtypes")
	@Override
	public void prepare(Map stormConf, TopologyContext context) {
		super.prepare(stormConf, context);
		threadpool = Executors.newFixedThreadPool(2); // 长度为2的线程池,为了保证在处理数据的同时,数据还可以被接收
// 这里如果线程池初始化不写在这里会出错Bolt 'S-DB' contains a non-serializable field
	}


	@Override
	public void execute(Tuple input, BasicOutputCollector collector) {
		try {
			final GnssMessage msg = (GnssMessage) input.getValue(0);
			VehicleMessageBody vehicleMessageBody = (VehicleMessageBody) msg
					.getBody();

			GnssData gnssData = (GnssData) vehicleMessageBody.getData();
			GnssInfo gnss = new GnssInfo(vehicleMessageBody.getVehicleNo(),
					vehicleMessageBody.getVehicleColor(), gnssData);
			QUEUES.add(gnss);

			if (QUEUES.size() % 200 == 0) {
				threadpool.submit(new Runnable() {
					
					@Override
					public void run() {
						gnssInfoManager.batchSave2(QUEUES);
						QUEUES.clear();
						
					}
				});

			}

 

© 著作权归作者所有

吹比龙
粉丝 10
博文 135
码字总数 38713
作品 0
合肥
程序员
私信 提问
Apache Storm 2.0.0 发布,基于 Java ​​​​​​​的新架构

Apache Storm 2.0.0 发布了,距离它上次更新已过去一年,新版本在性能、新功能和与外部系统的集成方面进行了重大改进,下面是一些主要功能及改进: 用 Java 实现的新架构 在之前的版本中,S...

xplanet
06/03
3.1K
5
Storm 和JStorm

关于流处理框架,在先前的文章汇总已经介绍过Strom,今天学习的是来自阿里的的流处理框架JStorm。简单的概述Storm就是:JStorm 比Storm更稳定,更强大,更快,Storm上跑的程序,一行代码不变...

止静
2014/08/30
9.6K
1
Apache Storm 1.2.3 发布,分布式实时计算

Apache Storm 1.2.3 发布了,更新内容如下: 新特性 [STORM-3233] - zookeeper 客户端升级到最新版本 (3.4.13) 改进 [STORM-3077] - Disruptor 升级至 3.3.11 [STORM-3083] - HikariCP 升级至...

xplanet
07/20
817
0
Apache Storm 0.9.7 发布,分布式实时计算

Apache Storm 0.9.7 发布了,Apache Storm 的前身是 Twitter Storm 平台,目前已经归于 Apache 基金会管辖。 Apache Storm 是一个免费开源的分布式实时计算系统。简化了流数据的可靠处理,像...

开源中国股侠
2016/09/08
794
1
Apache Storm 1.0.5 发布,分布式实时计算

Apache Storm 1.0.4 已发布,Apache Storm 是一个免费开源的分布式实时计算系统。简化了流数据的可靠处理,像 Hadoop 一样实现实时批处理。Storm 很简单,可用于任意编程语言。Apache Storm ...

王练
2017/09/16
863
5

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot 2 实战:使用 Spring Boot Admin 监控你的应用

1. 前言 生产上对 Web 应用 的监控是十分必要的。我们可以近乎实时来对应用的健康、性能等其他指标进行监控来及时应对一些突发情况。避免一些故障的发生。对于 Spring Boot 应用来说我们可以...

码农小胖哥
14分钟前
2
0
ZetCode 教程翻译计划正式启动 | ApacheCN

原文:ZetCode 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远。 ApacheCN 学习资源 贡献指南 本项目需要校对,欢迎大家提交 Pull Request。 ...

ApacheCN_飞龙
25分钟前
2
0
CSS定位

CSS定位 relative相对定位 absolute绝对定位 fixed和sticky及zIndex relative相对定位 position特性:css position属性用于指定一个元素在文档中的定位方式。top、right、bottom、left属性则...

studywin
34分钟前
5
0
从零基础到拿到网易Java实习offer,我做对了哪些事

作为一个非科班小白,我在读研期间基本是自学Java,从一开始几乎零基础,只有一点点数据结构和Java方面的基础,到最终获得网易游戏的Java实习offer,我大概用了半年左右的时间。本文将会讲到...

Java技术江湖
昨天
5
0
程序性能checklist

程序性能checklist

Moks角木
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部