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. This page contains the following error

    解决办法:将header头注释掉 header("content-type:text/xml; charset=UTF-8");

  2. Tree Representation Implementation & Traversal

    https://github.com/Premiumlab/Python-for-Algorithms--Data-Structures--and-Interviews/blob/master/Tre ...

  3. ST3 插件和技巧

    Emmet插件: 快速生成HTML文档结构, 快速编写跨浏览器的CSS并自动帮助你同时编辑, 强大! 语法技巧 简单实用, 值得掌握! SideBar Enhancements插件:  改进了侧边栏, ...

  4. android 蓝牙通讯编程 备忘

    1.启动App后: 判断->蓝牙是否打开(所有功能必须在打牙打开的情况下才能用) 已打开: 启动代码中的蓝牙通讯Service 未打开: 发布 打开蓝牙意图(系统),根据Activity返回进场 ...

  5. mysql中设置默认字符编码为utf-8

    使用过Linux的同志就知道,在Linux下安装mysql,尤其是使用yum安装的时候,我们是没法选择其默认的字符编码方式.这个就是一个比较头痛的问题,如果Linux数据库中使用到中文的时候,乱码问题 ...

  6. java反射中的动态代理机制(有实例)

    在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的 ...

  7. 团队作业(HCL队)第三周—需求改进和系统分析

    2.需求&原型改进: 1.问题:游戏中坦克的移动和攻击怎么控制的? 改进: 在游戏中,我控制我方坦克,按下方向键坦克便向按下的方向移动,按下Z键,我方坦克发射炮弹.敌方坦克面向随机的方向移动, ...

  8. Android Studio Genyomtion配置

    在AndroidStudio里面点击 File -> Settings 在Settings界面中,选择Plugins 在Plugins,输入Genymotion,并点击下面的链接 点击Insta ...

  9. 【算法34】蓄水池抽样算法 (Reservoir Sampling Algorithm)

    蓄水池抽样算法简介 蓄水池抽样算法随机算法的一种,用来从 N 个样本中随机选择 K 个样本,其中 N 非常大(以至于 N 个样本不能同时放入内存)或者 N 是一个未知数.其时间复杂度为 O(N),包含 ...

  10. 【Win2D】【译】Win2D 快速入门

    原文链接:http://microsoft.github.io/Win2D/html/QuickStart.htm 快速入门 这是 Win2D 的快速入门教程,将会介绍 Win2D 中的基本功能.你将 ...