storm的配置文件在${STORM_HOME}/conf/storm.yaml。下面详细说明storm的配置信息。

  java.libary.path:storm本身依赖包的路径,有多个路径的时候使用冒号隔开

  storm.local.dir:storm使用的本地文件系统的目录,storm进程必须对该目录拥有可写的权限

  storm.zookeeper.servers:storm集群对应的zookeeper集群的主机列表

  storm.zookeeper.port:storm集群对应的zookeeper集群的服务端口,默认的端口是2181

  storm.zookeeper.root:storm的元数据在zookeeper中存储的根目录

  nimbus.host:整个storm集群的nimbus节点

  storm.cluster.mode: storm运行模式,集群模式需要设置为distribution

  storm.messaging.transport: storm的消息传输机制,使用Netty的时候设置为backtype.storm.messaging.netty.Context

  nimbus.Supervisor.timeout.secs:storm中每个被发射出去的消息处理的超时时间,该时间影响到消息的处理,同时在Storm UI上kill掉一个topolopy的默认时间(kill动作发出多长时间后才会真正的将该Topolopy杀掉)

  ui.port: storm UI的对外提供HTTP服务的端口

  ui.childopts: storm UI 进程的JAVA参数

  logviewer.childopts: Log Viewer进程的参数设置

  logviewer.port: logviewer进程的端口号(logviewer进程也以HTTP形式提供,需要运行在每个Storm节点上)

  logviewer.appender.name: Storm log4j的appender,设置的名字对应于${STORM_HOME}/logback/cluster.xml中对应的appender,${STORM_HOME}/logback/cluster.xml中可以设置storm的log级别

  supervisor.slots.ports: Storm的slot,最好设置为OS核数的整数倍由于Storm是基于内存的实时计算框架,Solt数不要大于每台物理机可以运行的Solt数:(物理内存-虚拟内存)/每个JAVA进程最大可以暂用的内存数

  worker.childopts: Storm 的work进程的JAVA参数配置,有效的设置该参数可以在Topolopy异常的时候分析异常原因。-Xmx1g -Xms1g -server -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC

  topolopy.debug: 是否开启debug模式,线上建议不开启

  topolopy.acker.executors: Storm通过ack模式保证消息的不丢失,此参数设置每个topolopy的acker数量,建议将该该参数设置在较低的水平。参数也可以在具体的topolopy中覆盖。

  topolopy.max.spout.pending: 一个Spout Task中处于pending状态的最大的Tuple数量。该设置应用与单个Task,而不是Spout和topolopy,可以在具体的topolopy中覆盖。

  值得注意的是storm使用的是yaml做配置文件,因此在每个配置项的冒号后面要跟一个空格

  除了上述的配置外还有两个地方的配置十分的重要

  1.${STORM_HOME}/logback/cluster.xml可以配置storm的日志级别

  2.操作系统的配置,其中有两个配置很重要:open files:当前用户可以打开的文件描述符数量 max user processes:当前用户可以运行的进程数

  可以通过ulimit -a查看操作系统的配置,结果如下:

core file size          (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
scheduling priority (-e)
file size (blocks, -f) unlimited
pending signals (-i)
max locked memory (kbytes, -l)
max memory size (kbytes, -m) unlimited
open files (-n)
pipe size ( bytes, -p)
POSIX message queues (bytes, -q)
real-time priority (-r)
stack size (kbytes, -s)
cpu time (seconds, -t) unlimited
max user processes (-u)
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited

      

storm配置详解的更多相关文章

  1. Storm配置项详解【转】

    Storm配置项详解 ——阿里数据平台技术博客:storm配置项详解 什么是Storm? Storm是twitter开源的一套实时数据处理框架,基于该框架你可以通过简单的编程来实现对数据流的实时处理变 ...

  2. Log4j配置详解(转)

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  3. logback 常用配置详解<appender>

    logback 常用配置详解 <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的 ...

  4. [转]阿里巴巴数据库连接池 druid配置详解

    一.背景 java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池.数据库连接池有很多选择,c3p.dhcp.proxool等,druid作为一名后起之秀,凭借其出色 ...

  5. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  6. logback配置详解3<filter>

    logback 常用配置详解(三) <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一.返回DENY ...

  7. logback配置详解2<appender>

    logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写 ...

  8. log4j.properties配置详解

    1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ...

  9. Log4J日志配置详解

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

随机推荐

  1. python生成验证码,文字转换为图片-乾颐堂

    在58或者赶集等一些网站上经常看到手机号是图片格式,或者一些网站的验证码.这些都是动态生成的,今天我们来看一下如何用python把文字生成图片.其实今天主要借助pygame的图像渲染模块,这样比较简单 ...

  2. HBase Filter程序样例及Shell(图)

    ==过滤器执行流程== reset() : reset the filter state before filtering a new row. filterAllRemaining(): true ...

  3. 2018.09.21 atcoder An Invisible Hand(贪心)

    传送门 简单贪心啊. 这题显然跟t并没有关系,取差量最大的几组买入卖出就行了. 于是我们统计一下有几组差量是最大的就行了. 代码: #include<bits/stdc++.h> #def ...

  4. winform 按键控制

    用ADSW来控制前后左右,J表示开火,J不能连续按 _+表示速度档位. DateTime _LastPress = DateTime.MinValue; Keys _PrevKey = Keys.No ...

  5. C++动态分配内存(new)和撤销内存(delete)

    在软件开发过程中,常常需要动态地分配和撤销内存空间,例如对动态链表中结点的插入与删除.在C语言中是利用库函数malloc和free来分配和撤销内存空间的.C++提供了较简便而功能较强的运算符new和d ...

  6. JPA数据懒加载LAZY和实时加载EAGER(转)

    原文:https://www.cnblogs.com/MrSi/p/8081811.html 懒加载LAZY和实时加载EAGER的概念,在各种开发语言中都有广泛应用.其目的是实现关联数据的选择性加载, ...

  7. 删除k8s中一直处于Terminating的资源

    1.将所有的etcd中的key值取到一个keys.yam里面,便于查询 ETCDCTL_API=3 etcdctl get "" --from-key > keys.yaml ...

  8. pytest 常用命令行选项(一)

    pytest有丰富的命令行选项,以满足不同的需要,下面对常用的命令行选项作下简单介绍.  上文已经使用过-v选项,还有很多选项,你可以使用pytest --help查看全部选项.如下图: 1.--co ...

  9. noip第8课作业

    1.     计算书费 [问题描述]下面是一个图书的单价表: 计算概论 28.9 元/本 数据结构与算法 32.7 元/本 数字逻辑 45.6元/本 C++程序设计教程 78 元/本 人工智能 35  ...

  10. Hdu1342 Lotto 2017-01-18 17:12 44人阅读 评论(0) 收藏

    Lotto Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submiss ...