zoukankan      html  css  js  c++  java
  • Flume组件source,channel,sink源码分析

    LifeCycleState:

    IDLE, START, STOP, ERROR

    [Source]: org.apache.flume.Source

             继承LifeCycleAware{stop() + start() + getLifeCycleState()} + NamedComponent{getName() + setName()}

             产生事件(Event),调用通道处理器(ChannelProcessor)的方法,将事件(Event)持久化到通道(Channel)中。

    [Channel]: org.apache.flume.Channel

             继承LifeCycleAware{stop() + start() + getLifeCycleState()} + NamedComponent{getName() + setName()}

             将source(Event生产者)和sink(Event消费者)进行关联,Channel本是一个缓存(buffer),通道是线程安全的。

             put(Event e);                                                   //向Channel中放置事件(Event)

        take();                                                            //从Channel中提取事件(Event)

             Transaction getTransaction()                          //获取Channel事务

    [Sink]: org.apache.flume.Sink

             继承LifeCycleAware{stop() + start() + getLifeCycleState()} + NamedComponent{getName() + setName()}

             连接到Channel,消费内容,发送给目的地。

             可以按照行为进行分组化(SinkGroup | SinkProcessor)

             Channel getChannel();

             setChannel(Channel ch);

             Status process();

  • 相关阅读:
    在SQL2000怎樣用動態實現SQL2005的nvarchar(max)功能
    行列互换
    c#+GUI在aspx页面画图
    做网站用UTF8还是GB2312?
    Mvc如何做权限
    表白网
    vs2008保存很慢,提速
    MVC 向View传值
    aspx画图表
    什么是MVC
  • 原文地址:https://www.cnblogs.com/chinda/p/6125869.html
Copyright © 2011-2022 走看看