Storm精华问答 | task与executor有什么关系?

戳蓝字“CSDN云计算”关注我们哦!


640?wx_fmt=png

归于Apache社区,Storm被业界称为实时版Hadoop。随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍。而目前已是分布式技术领域最新爆发点,Storm更是流计算技术中的佼佼者和主流。今天我们就一起来看看Storm的精华问答!


640?wx_fmt=gif1

Q:task与executor有什么关系?


A:在我们安装配置Storm的时候,不知大家是否主要到了一个问题,就是我们在配置的时候会加几个worker的端口(supervisor.slots.ports:),比如众多文档中提到的6700/6701等等类似的东西。没错,这就是我们定义了该supervisor最多的worker数,worker中执行一个bolt或者spout线程,我们就称之为task,而executor是物理上的线程概念,我们可以将其称为执行线程;而task更多是逻辑概念上的,有时候bolt与spout的task会共用一个executor,特别是在系统负荷比较高的时候。



640?wx_fmt=gif2

Q:Storm UI 里spout 统计的complete latency 的具体含义是什么?为什么emit 的数目会是acked的两倍?


      A:简单地说,complete latency 表示了tuple 从emit 到被acked 经过的时间,可以认为是tuple以及该tuple 的后续子孙(形成一棵树)整个处理时间。其次spout 的emit 和transfered 还统计了spout和acker 之间内部的通信信息,比如对于可靠处理的spout 来说,会在emit 的时候同时发送一个_ack_init给acker,记录tuple id 到task id 的映射,以便ack 的时候能找到正确的acker task。


640?wx_fmt=gif3

Q:Storm的Spout组件中的ack及fail是一个什么样的机制呢?


       A:Storm保证每一个数据都得到有效处理,这是如何保证的呢?正是ack及fail机制确保数据都得到处理的保证,但是storm只是提供给我们一个接口,而具体的方法得由我们自己来实现。例如在spout下一个拓扑节点的bolt上,我们定义某种情况下为数据处理失败,则调用fail,则我们可以在fail方法中进行数据重发,这样就保证了数据都得到了处理。其实,通过读storm的源码,里面有讲到,有些类(BaseBasicBolt?)是会自动调用ack和fail的,不需要我们程序员去ack和fail,但是其他Bolt就没有这种功能了。


640?wx_fmt=gif4

Q:IRichBolt与IBasicBolt接口有什么区别?


A:首先从类的组成上进行分析可以看到,IBasicBolt接口只有execute方法和declareOutputFields方法,而IRichBolt接口上除了以上几个方法还有prepare方法和cleanup及map方法。而且其中execute方法是有些不一样的,其参数列表不同。

总体来说Rich方法比较完善,我们可以使用prepare方法进行该Bolt类的初始化工作,例如我们链接数据库时,需要进行一次数据库连接操作,我们就可以把该操作放入prepare中,只需要执行一次就可以了。而cleanup方法能在该类调用结束时进行收尾工作,往往在处理数据的时候用到,例如在写hdfs(hadoop的文件系统)数据的时候,在结束时需要进行数据clear,则需要进行数据收尾。当然,根据官网及实际的测验,该方法往往是执行失败的。


640?wx_fmt=gif5

Q:发布topologies 到远程集群时,出现Nimbus host is not set 异常,请问是什么问题?


     A:原因是Nimbus 没有被正确启动起来,可能是storm.yaml 文件没有配置,或者配置有问题。解决方法是:打开storm.yaml 文件正确配置:nimbus.host: "xxx.xxx.xxx.xxx",重启nimbus后台程序即可。


小伙伴们冲鸭,后台留言区等着你!

关于Storm,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……

同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~


-

640?wx_fmt=png


福利

扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!


640?wx_fmt=jpeg


推荐阅读:

  • 50个最有价值的数据可视化图表(推荐收藏)

  • 一键免费自动AI抠图,效果连PS大哥也点赞!

  • 被V神点赞, 我是如何用五子棋打败以太坊排名最高的应用的? |人物志

  • 那些简历造假拿 Offer 的程序员,后来都怎么样了?

  • 华为立 Flag:一年超越三星做全球智能手机老大!

  • 骗局翻新, 暗网活跃度倍增, 2018加密货币犯罪报告敢看吗?

  • 春晚鬼畜 B 站日排行最高,赵本山:我的时代还没有结束!

  • PDF翻译神器,再也不担心读不懂英文Paper了

  • 新闻联播也可以拿来做数据分析?


640?wx_fmt=png喜欢就点击“好看”吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/524675.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React之props基本使用

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>1_props基本使用</title> </head> <body> <!-- 准备好一个容器 --> <div id"test1"></div> <div id"test2&qu…

C/C++ atof函数 - C语言零基础入门教程

目录 一.atof 函数简介二.atof 函数函数实战三.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门 一.atof 函数简介 在 stdlib.h 中 atof 函数,可用于将 char 字符串转为 float / double 浮点数类型&#xff0c;语法如下&#xff1a; /* *描述&…

K8S安全军规101:对CNCF最佳实践的扩充

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | GOINS本文转载自公众号&#xff1a;RancherLabs在昨天的文章里&#xff0c;我们分享了CNCF为广大Kubernetes用户建议的9项Kubernetes安全最佳实践&#xff0c;分享了用户使用Kubernetes管理集群时的9个能进一步确保集群安全的…

React之类式组件中的构造器与props

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_类式组件中的构造器与props</title> </head> <body> <!-- 准备好一个容器 --> <div id"test1"></div> <div id&q…

C/C++ ltoa函数 - C语言零基础入门教程

目录 一.ltoa 函数简介二.int 和 long 区别三.ltoa 函数函数实战四.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门 一.ltoa 函数简介 在 stdlib.h 中 ltoa 函数,可用于将 long 整数类型转为 char 字符串&#xff0c;语法如下&#xff1a; /* *描…

要闻君说:小米手机部组织架构突现大调整;河南联通重启VDC扩容工程招标;英特尔已收购Ineda Systems,剑指独显;...

关注并标星星CSDN云计算每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 大家好&#xff01;偶是要闻君。伴随着汤圆节“落幕”&#xff0c;过年的喜庆正式进入尾声&#xff0c;本周过半&#xff0c;鼓足精神工作啦&#xff01;文/要闻君据了解&#xff0…

React之函数式组件使用props

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>3_函数式组件使用props</title> </head> <body> <!-- 准备好一个容器 --> <div id"test1"></div> <div id"te…

C/C++ ultoa函数 - C语言零基础入门教程

目录 一.ltoa 函数简介二.int/long/unsigned long 区别 1.无符号整形&#xff08;16 位系统&#xff09;2.有符号整形&#xff08;16 位系统&#xff09;3.int 和 long 区别 三.ultoa 函数函数实战四.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门…

2019年中国IT市场趋势热点

戳蓝字“CSDN云计算”关注我们哦&#xff01;本文转载自公众号&#xff1a;中桥调研咨询向数字化转型已经深入人心&#xff0c;在数字经济下&#xff0c;IT架构正在向以数字为核心转变&#xff0c;云计算的普及和多元化趋势驱动了人工智能和物联网的快速发展&#xff0c;而两者…

React之jsx小练习

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>jsx小练习</title> <style> .title{ background-color: orange; width:200px; } </style> </head> <body> <!-- 准备好一个容器 --&…

C/C++ strtod函数 - C语言零基础入门教程

目录 一.strtod 函数简介二.strtod 函数函数实战三.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门 一.strtod 函数简介 在 stdlib.h 中 atof 函数,可用于将 char 字符串转为 float / double 浮点数类型&#xff0c;而 C 语言中 strtod 函数&…

2019年最值得关注的五大微服务发展趋势

戳蓝字“CSDN云计算”关注我们哦&#xff01;译文 | Andy本文转载自公众号&#xff1a;Docker2018年对于DevOps社区来说无疑是重要的一年。Kubernetes成为第一个从云原生计算基金会&#xff08;简称CNCF&#xff09;毕业的项目&#xff1b;Pivotal公司完成了首轮公开募股&#…

React之组件与模块

1.模块 1&#xff09;就是js文件 2&#xff09;为什么拆成模块&#xff0c;代码多、杂 3&#xff09;作用&#xff1a;复用js&#xff0c;简化js&#xff0c;提高js运行效率 2.组件 1&#xff09;代码资源的集合&#xff08;html、css、js、image&#xff09; 2&#xff…

C/C++ strtol 函数 - C语言零基础入门教程

目录 一.strtol 函数简介二.strtol 函数函数实战三.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门 一.strtol 函数简介 在 stdlib.h 中 atoi 或者 atol 函数,可用于将 char 字符串转为 int/ long 整数类型&#xff0c;而 C 语言函数 strtol函数&…

Docker精华问答 | task与executor有什么关系?

戳蓝字“CSDN云计算”关注我们哦&#xff01;容器技术是这两年热门的话题&#xff0c;因为容器技术给我们带来了很多方便的地方&#xff0c;节约了不少成本&#xff0c;不管是在运维还是开发上。今天&#xff0c;就让我们来看看关于Docker更加有深度的问题吧。1Q&#xff1a;为…

C/C++ atol函数- C语言零基础入门教程

目录 一.ltoa 函数简介二.int/long/unsigned long 区别 1.无符号整形&#xff08;16 位系统&#xff09;2.有符号整形&#xff08;16 位系统&#xff09;3.int 和 long 区别 三.atol 函数函数实战四.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门…

微服务精华问答 | 微服务如何测试?

戳蓝字“CSDN云计算”关注我们哦&#xff01;微服务(Microservice Architecture)是近几年流行的一种架构思想,关于它的概念很难一言以蔽之。今天&#xff0c;就让我们来看看关于微服务更加有深度的问题吧。1Q&#xff1a;微服务如何测试&#xff1f;A&#xff1a;当涉及到测试时…

React之事件绑定

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>state事件绑定</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 --> <s…

C/C++ _strlwr_s 函数 – 字符串大写转小写- C语言零基础入门教程

目录 一._strlwr_s 函数简介二._strlwr_s 函数实战三.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 语言基础入门 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 面向对象 零基础 C/C 学习路线推荐 : C/C 学习目录 >> C 设计模式 零基础 C/C 学习…

你与数据科学家只差这26条python技巧

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | Peter Gleeson来源 | Python数据科学编译 | wLsqPython是目前世界上最流行的编程语言之一。因为:1.它容易学习2.它用途超广3.它有非常多的开源支持&#xff08;大量的模块和库&#xff09;作者 Peter Gleeson 是一名数据科学…