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. vue-route 路由传参的使用

    1 router/index.js 中的定义 { path: '/product', component: ProductIndex, meta: { requiredAuth: true, }}, ...

  2. httpclient学习(原创)

    --httpmime-4.2.5.jar  跟提交Form相关的类 这一块主要post数据的提交.每一条数据同name和content组成.content可能是字节数组或是流.提交这一类(MIME)的 ...

  3. sublime3 多行编辑.摘抄

    Sublime text 3是一个非常强大的网站编辑工具. 这里小云深深的被它的快速编辑多行内容功能所吸引. 先说下,使用下面的功能要安装一个叫emmet的插件.没有的话,自行度娘吧. 下面就来看下具 ...

  4. C山寨C++

    #include <stdio.h> #include <string.h> #include <malloc.h> typedef struct Aclass_s ...

  5. python 线程和进程概述

    计算机中执行任务的最小单元:线程 IO操作利用CPU GIL,全局解释器锁 IO密集型: 多线程(不用CPU) 计算机密集型(用CPU) 进程和线程的目的:提高执行效率 1.单进程单线程,主进程.主线 ...

  6. 着重基础之—构建工具—Maven的依赖管理

    着重基础之—构建工具—Maven的依赖管理 项目构建利器Maven给我们开发人员带来了极大的便利,从繁琐的jar包管理中脱身的程序员终于可以有时间再进入另一个坑了. 我今天要给大家分享的内容是我在实际 ...

  7. 超全table功能Datatables使用的填坑之旅--1: 无法渲染表格数据: ajax调用了参数 : success

    问题:Datatables: 无法渲染表格数据 原因:datatables的ajax 传了"success":function(){},导致无法渲染数据. ajax 删掉" ...

  8. 分享一个以前写的基于C#语言操作数据库的小框架

    一:前言 这个是以前写的操作MySQL数据库的小型框架,如果是中小型项目用起来也是很不错的,里面提供Filter.ModelPart.Relationship等机制实现操作数据库时的SQL语句的拼接和 ...

  9. DIV+CSS实战(一)

    一.说明 作为一个后台的程序员,我也是很少写前端,最近有一个项目,前端主要是由我来负责,就把我在项目中所学到的东西,记录下来!我的页面要嵌入到另一个系统中,所以,并不是按照传统的top,left,co ...

  10. IntelliJ IDEA 14 Keygen

    package keygen; import java.math.BigInteger; import java.util.Date; import java.util.zip.CRC32; publ ...