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();

Flume组件source,channel,sink源码分析

 

相关文章:

  • 2022-12-23
  • 2021-08-28
  • 2021-06-26
  • 2021-05-24
  • 2021-12-27
  • 2021-10-21
  • 2021-11-21
  • 2022-12-23
猜你喜欢
  • 2021-12-24
  • 2022-02-17
  • 2021-12-06
  • 2021-09-06
  • 2021-04-25
  • 2022-12-23
  • 2021-09-02
相关资源
相似解决方案