Apache NiFi Stateless是一种轻量级、无状态的NiFi引擎,其功能比Apache NiFi基础架构更为简单,但它可以扮演类似角色,即转换和处理数据。Apache NiFi MiNiFi则是为嵌入式设备或边缘设备开发的轻量级NiFi版本,可用于收集和转换设备上的数据,以便其可以在网络上传输到其他NiFi实例或中心数据湖。以下是示例代码:
Apache NiFi Stateless示例代码:
public class MyProcessor extends AbstractProcessor {
@Override
public void onTrigger(ProcessContext context, ProcessSession session) throws ProcessException {
FlowFile flowFile = session.get();
if(flowFile == null) {
return;
}
//处理flowFile
session.transfer(flowFile, REL_SUCCESS);
session.commit();
}
}
Apache NiFi MiNiFi示例代码:
public class MyReadingProcessor extends AbstractMiNiFiProcessor {
@Override
public void onTrigger(ProcessContext context, ProcessSession session) throws ProcessException {
byte[] data = readFromSensor(); //从传感器读取数据
FlowFile flowFile = session.create();
flowFile.write(data); //写入flowFile
session.transfer(flowFile, REL_SUCCESS);
session.commit();
}
}