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