Nifi:nifi 中的线程

2023-12-08

我想知道线程在 nifi 中如何工作,我的意思是一个处理器有一个线程还是它们在一个主线程中?也许我想从处理器获取一个文件,然后我想更新它

  1. 如何防止多个处理器同时获取文件数据 除了使用 keep file =false 操作?
  2. 是否可以在执行脚本处理器代码中使用 Thread.sleep ?
  3. 是否可以通过groovy做出相同的逻辑?

我尝试使用 java 文件锁,但它似乎不起作用,这是我的代码,

     File file = new File("C://Users//user//Desktop//try2//nifi-
      1.3.0//4//conf2.xml");
        String content = "";
        String material = "";
        BufferedReader s;
        BufferedWriter w;
        int m;
        RandomAccessFile ini = new RandomAccessFile(file, "rwd");
        FileLock lock = ini.getChannel().lock();
        DocumentBuilder dBuilder;
        Document document, doc;
        String date="";
        String data="";
        boolean make = false;
        try {

            String sCurrentLine;
            s = new BufferedReader(Channels.newReader(ini.getChannel(), "UTF-8"));
            while ((sCurrentLine = s.readLine()) != null) {
                content += sCurrentLine;
            }
            ini.seek(0);

我想知道线程在 nifi 中如何工作,我的意思是一个处理器有一个线程还是它们在一个主线程中?

Nifi 有一个可配置的线程池( sandwich menu -> controller settings -> general )当任何处理器计划执行时,系统从池中取出空闲线程,在该线程中执行处理器,并将线程返回到线程池。因此,每个处理器在单独的随机线程中执行。

如何防止多个处理器同时获取文件数据 除了使用 keep file =false 操作?

你需要存储一个标志file XXX processed。您将如何存储它 - 这是您的选择。例如,您可以创建一个同名但添加扩展名的空文件:conf.xml -> conf.xml.done。并在代码中检查文件是否存在conf.xml.done存在则跳过conf.xml文件处理。

您可以将标志存储在数据库、缓存系统等中。

是否可以在执行脚本处理器代码中使用 Thread.sleep ?

有可能,但我认为这没有任何意义。

是否可以通过groovy做出相同的逻辑?

你可以用 groovy 做所有事情:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Nifi:nifi 中的线程 的相关文章

  • AbstractCollection 的 toArray 方法的实现中的代码有什么用

    public Object toArray Estimate size of array be prepared to see more or fewer elements Object r new Object size Iterator
  • 如何可靠地判断 boost 线程是否已退出其 run 方法?

    我以为 joinable 会表明这一点 但事实似乎并非如此 在工人阶级中 我试图表明它仍在通过谓词进行处理 bool isRunning return thread gt joinable 已经退出的线程不是不能加入吗 我错过了什么 boo
  • Java 的 System.arraycopy() 对于小数组有效吗?

    是Java的System arraycopy 对于小数组来说是高效的 或者它是本机方法这一事实是否使其可能比简单的循环和函数调用效率低得多 本机方法是否会因跨越某种 Java 系统桥梁而产生额外的性能开销 稍微扩展一下 Sid 所写的内容
  • 在 Eclipse 中跨文件搜索注释掉的代码

    有没有一种快速方法可以在 Eclipse 中查找 Java 文件中所有注释掉的代码 也许是搜索中的任何选项 或者任何可以执行此操作的附加组件 它应该只能找到被注释掉的代码 而不是普通的注释 在 Eclipse 中 我只是在打开正则表达式复选
  • 无法让远程 EJB 与 Wildfly 上的 EJB 客户端 API 配合使用

    我目前正在努力让远程 EJB 调用在 wildfly 8 x 和 9 x 上工作 详细来说 它是关于使用 EJB 客户端 API 方法从独立客户端应用程序 而不是从另一个应用程序服务器 进行远程调用 远程命名方法适用于我 但不适用于我的场景
  • 如何限制用户键入时 JTextPane 中的字符数 (Java)

    我需要不允许在输入 X 后输入任何字符 我需要在输入 X 个字符后发出蜂鸣声 我知道如何在用户按 Enter 键后执行此操作 但我需要在用户按 Enter 键之前执行此操作 我从 Oracle 站点找到的方法是将 DocumentSizeF
  • Android - 内容值覆盖现有行

    我正在尝试使用插入值ContentValues 我已将 5 个值插入到 5 列中 运行应用程序后 我只有最后一组值的行ContentValues 前四组未插入 ContentValues cv new ContentValues cv pu
  • 如何使用 JAVA 和 ADB 命令检查 Appium 中键盘是否打开

    我正在尝试检查 Android 默认键盘是否打开 我没有找到任何可以在 Appium 中使用 JAVA 和 ADB 命令检查键盘的内容 我发现这个 ADB 命令可以检查键盘是否打开 adb shell dumpsys input metho
  • java中main的返回类型

    我想知道为什么java中main方法只有void返回类型 public static void main String args 为什么main方法除了void之外没有其他返回类型 Thanks 简短的回答是 因为这就是语言规范 http
  • 使用java读取Excel工作表的单列

    我有一张 Excel 表格 我想编写一个方法 该方法将参数作为要读取的列号 并返回一个由该列中的所有数据组成的数组 然后将该列元素放置在 xml 工作表中 我怎样才能编写一个方法来做到这一点 使用 Apache POI 您可以在他们的使用页
  • 将 @RequestLine 与 Feign 一起使用

    我有一个工作 Feign 接口定义为 FeignClient content link service public interface ContentLinkServiceClient RequestMapping method Requ
  • 当另一个线程发生事情时从主线程获取数据?

    目前我有一个线程正在运行一个侦听连接的套接字 当它收到连接时 它需要上传在主线程中收集的数据 即从主线程获取数据 但是 我传递了对象的实例 但它从未使用等待连接时收集的数据进行更新 有没有正确的方法来做到这一点 我用谷歌搜索了一下 似乎找不
  • 在同一台计算机上设置 JBoss 的多个实例

    我在 JBoss 社区中找到了下一页 http www jboss org community wiki ConfigurePorts http www jboss org community wiki ConfigurePorts 有下一
  • 在 HttpClient4 中使用 PoolingHttpClientConnectionManager 的正确方法出现问题 java.lang.IllegalStateException: 连接池关闭

    我正在 Java 中利用 HTTPclient4 发送 HTTP 请求并处理 HTTP 响应 我想使用连接池来提高性能 但我无法找到合适的方法来做到这一点 我正在 Java 中利用 HTTPclient4 发送 HTTP 请求并处理 HTT
  • 从 SQL 语句中检索元数据(表名)

    我使用的是 Visual Studio 2008 我创建了一个 Winforms 应用程序 并且尝试从 SQL 语句中提取表名 con new SqlConnection connString String queryString Sele
  • JBoss 5 截断 base64 cookie 字符串的尾部 =

    从 JBoss 4 升级到 JBoss 5 后 我注意到最烦人的回归 它截断 base64 cookie 值的尾部等号 我花了很长时间才明白问题不是我的代码而是 JBoss 的 我用 google 搜索了一下 发现这是一个已知的问题issu
  • 从 AJP 连接器请求中检索 Shibboleth 属性

    当我在 Apache 上运行 Shibboleth 身份验证时遇到了一个奇怪的问题 当 Tomcat7 在后端运行时 Apache 通过 mod proxy ajp 发送所有内容 Shibboleth 的参数也是如此 In the 文档 h
  • Admob - 没有广告可显示

    你好 我尝试制作一些在 Android 手机上显示广告的示例程序 并尝试在 v2 2 的模拟器上测试它 代码中的一切似乎都很好 但调试器中的 AdListener 表示 响应消息为零或空 onFailedToReceiveAd 没有广告可显
  • Spring 和 Hibernate 连接池

    如何使用 Spring 和 Hibernate 配置连接池 Thanks Venu 您可以使用 DBCP 组件
  • 生成签名和加密的 JWT

    我正在尝试使用生成签名和加密的 JWT 令牌雨云智威汤逊 http connect2id com products nimbus jose jwt private void generateToken throws JOSEExceptio

随机推荐

  • PHP 表单提交时自动跳转到 HTML 锚点

    我正在尝试将表单添加到我的索引页面中 以便当您单击 提交 时 页面重新加载时它将自动返回到表单 现在 如果页面上有任何错误 它会在表单上方显示它们 并给出一些感谢信息 我目前的index html 页面有以下内容
  • BizTalk Schema 开发 - 十六进制值 0x19,是无效字符

    我有一个架构元素节点 如下所示
  • 如何使用 PLSQLDeveloper 窗口打印 SYS_REFCURSOR?

    在下面的查询中如何在 PL SQL SQL Window 中获取 IO CURSOR 值 DECLARE SOME VAR 1 VARCHAR2 20 SOME VAR 2 VARCHAR2 20 SOME VAR 3 DECIMAL IO
  • 在函数式编程中,什么是函子?

    我在阅读有关函数式编程的各种文章时多次遇到 函子 一词 但作者通常假设读者已经理解该术语 在网络上环顾四周 要么提供了过多的技术描述 请参阅维基百科文章 或令人难以置信的模糊描述 请参阅此处有关函子的部分ocaml 教程网站 有人可以定义这
  • 如何从sql bigquery中的字符串字典列表中获取值?

    您好 我有一个包含以下数据的 sql 表 Outbound click action type outbound click value 1025 我如何获得正确的值 因为这是 bigquery sql 中的字符串 我想要的输出是 Outb
  • 如何在 Google Container Engine 上使用 Kubernetes 服务公开动态端口?

    我正在尝试通过 TCP 协议通过互联网从本地计算机连接到 Google Container Engine GKE 上的 Docker 容器 到目前为止 我已经使用了 Kubernetes 服务 它提供了外部 IP 地址 因此本地计算机可以使
  • C#:文件复制通知[关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 您好 我正在创建一个 C 应用程序来监视已复制的文件 该程序的目的是提醒用户有一个文件已被复制 我知道文件系统观察程序类 但它只有 4 个事件 更改或创建或删除或重命名 有没有办法知道
  • 如何访问过程之外的变量

    我正在尝试围绕 Tcl 变量作用域进行思考 但我坚持认为是一个简单的概念 如何访问我在过程之外定义的变量 但我没有明确地定义该变量传递给进程 我试图避免设置一堆全局变量 并且只访问我在特定命名空间中定义的变量 我需要在下面的代码中添加什么以
  • 使用 ItemsSource 将预定义项目添加到 ComboBox

    我正在尝试将预定义的 ComboBoxItem 添加到已设置 ItemsSource 属性的 ComboBox 中 例子 Select item Item 1 Item 2 Item 3 可以在不修改原始项目集合的情况下执行此操作吗 以下是
  • 如何在 Firestore 上以有限权限使用 Admin SDK?

    我在云功能和 Firestore 规则方面遇到一些问题 我想在 Firestore 上使用具有有限权限的云功能并给予 仅具有安全规则中定义的访问权限 它在 RTDB 上运行没有问题 但在 Firestore 上运行不正常 我尝试过这个规则
  • 各种编译器编译的链接库

    我想更详细地询问我最近在这里得到的答案 第三个 编译语言基础知识 如果我用 C 和 MinGW 编写并链接到 VC 编译的 C 库 它会工作吗 我如何提前知道 换句话说 如果我能够在没有警告的情况下创建链接到该 C dll 的 exe 并且
  • 如何捕获对话框外触摸时的事件?

    我的应用程序有一个对话框 我想在用户单击对话框外部时捕获事件 为此我需要做什么 谢谢大家 Dialog有setCanceledOnTouchOutside boolean 方法 如果您传递 true 作为参数 当您触摸窗口边界之外时 对话框
  • jquery datepicker + 日期差异计算

    这是我的代码 function arr date datepicker dateFormat dd mm yy dep date datepicker dateFormat dd mm yy function var start arr d
  • 如何编写 Firebase 规则以允许仅读取集合/文档的一部分? [复制]

    这个问题在这里已经有答案了 我正在使用 firebase firestore 开发一个网站 该网站向基于角色的用户显示文章 所以数据库保存了文章的集合 qlt0mPbTBt1rQcrx1HJR title Article 1 descrip
  • jQuery.parseJSON \u0092 字符未解析

    我有一个从 php 编码的文本 带有 ajax 函数和 de php utf8 encode 如果我直接在控制台中打印它 文本将显示如下 projects id 1 title CURSOS DE PERIODISME descriptio
  • 使用赋值作为条件表达式?

    考虑 if a 5 do something 任务作为条件如何发挥作用 它是基于左值的非零值吗 C ISO IEC 14882 2003 E 5 17 1 有几个赋值运算符 它们都组 右到左 全部都需要一个可修改的左值作为其左操作数 赋值表
  • 在 Angular Dart 组件中填充派生字段

    我有一个采用单个属性的组件 我想用从此属性派生的值填充组件中的字段 我遇到的问题是 当构造函数内的代码运行时 与属性的绑定尚未发生 那么 如何设置派生字段的值呢 这是一些代码 import package angular angular d
  • 是否可以使用pandas中的groupby来执行applymap?

    在 pandas Dataframe 中我想要applymap somefunction using groupby 使用一些列索引值 mcve 01 txt pos index M1 M2 F1 x 16230484 141 G G G
  • C# 中的联合 - 与非对象字段不正确对齐或重叠

    我通过 PInvoke 编组到本机 C dll 它需要以下调用 private static extern int externalMethod IntPtr Data MarshalAs UnmanagedType U4 ref int
  • Nifi:nifi 中的线程

    我想知道线程在 nifi 中如何工作 我的意思是一个处理器有一个线程还是它们在一个主线程中 也许我想从处理器获取一个文件 然后我想更新它 如何防止多个处理器同时获取文件数据 除了使用 keep file false 操作 是否可以在执行脚本