开发者社区> 问答> 正文

jstorm的问题

我用jstorm测试的时候遇到了一个奇怪的问题:1个bolt类的变量(可以看做是int),在同一个时刻,打印出了2个不同的值
具体截图如下:左侧是当这个bolt收到了一个pay的消息时打印的该变量的值,右侧是bolt收到了一个taobao订单消息时候的打印的值,可以保证这两个值源于1个对象的相同域并且代码中除了初始化没有对这个变量--或者赋值为0的操作 操作只有++的操作 结果打印出了截然不同的值 求解。。。


1个值是0 1个是1213326
难道是和5-BoltExecutors和6-BoltExecutors有关?
求解 谢谢

展开
收起
小强7657723 2016-07-04 00:57:43 4307 0
2 条回答
写回答
取消 提交回答
  • 回 楼主小强7657723的帖子
    那如果1个bolt可能运行在多个jvm里面 那成员变量的数据怎么协同呢?
    2016-07-04 09:39:06
    赞同 展开评论 打赏
  • Rejstorm的问题
    应该是的,即便是在一个worker里面,一个bolt你也可以看做一个独立的线程。更不要说bolt可能都不在一个worker(jvm)内
    2016-07-04 01:36:45
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
HBase 和 OpenTSDB 在华为的实战 立即下载
任庆盛|Flink CDC + Kafka 加速业务实时化 立即下载
基于 Dledger 构建高可用 Apache RocketMQ 集群实践 立即下载