Apache NiFi 2.x处理器:ListenTCP 2.2.0

Apache NiFi 2.x处理器:ListenTCP 2.2.0

经验文章nimo972025-03-16 15:35:268A+A-

org.apache.nifi | nifi-standard-nar

描述

监听传入的TCP连接,并使用行分隔符作为消息分隔标记从每个连接读取数据。默认行为是每条消息生成一个FlowFile,不过,为了实现更高的吞吐量,可以将“Batch Size(批处理大小)”增大到更大的值来控制这一行为。“Receive Buffer Size(接收缓冲区大小)”必须设置为不小于预期接收的最大消息的大小,这意味着如果每100kb有一个行分隔符,那么“Receive Buffer Size(接收缓冲区大小)”必须大于100kb。可以配置该处理器使用SSL上下文服务,以便仅允许安全连接。当连接的客户端提供证书用于双向TLS身份验证时,客户端证书颁发者和使用者的可分辨名称将作为属性添加到传出的FlowFile中。该处理器不会基于可分辨名称值执行授权,但由于这些值会附加到传出的FlowFile中,因此可以基于这些属性实现授权。

标签

listen, ssl, tcp, tls

输入要求

禁止

支持敏感动态属性

属性

  • Character Set(字符集):指定接收数据的字符集。
    • 显示名称:Character Set(字符集)
    • 描述:指定接收数据的字符集。
    • API名称:Character Set(字符集)
    • 默认值:UTF-8
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Client Auth(客户端身份验证):用于SSL上下文的客户端身份验证策略。仅在“SSL Context Service(SSL上下文服务)”设置为指定值时使用。
    • 显示名称:Client Auth(客户端身份验证)
    • 描述:用于SSL上下文的客户端身份验证策略。仅在提供“SSL Context Service(SSL上下文服务)”时使用。
    • API名称:Client Auth(客户端身份验证)
    • 默认值:REQUIRED
    • 允许值:WANT、REQUIRED、NONE
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Idle Connection Timeout(空闲连接超时):如果未接收到数据,客户端连接将保持打开的时间长度。默认值0秒表示连接将保持打开状态,直到被客户端关闭。
    • 显示名称:Idle Connection Timeout(空闲连接超时)
    • 描述:如果未接收到数据,客户端连接将保持打开的时间长度。默认值0秒表示连接将保持打开状态,直到被客户端关闭。
    • API名称:idletimeout
    • 默认值:0秒
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Local Network Interface(本地网络接口):用于将监听限制在特定局域网的本地网络接口名称。
    • 显示名称:Local Network Interface(本地网络接口)
    • 描述:用于将监听限制在特定局域网的本地网络接口名称。
    • API名称:Local Network Interface(本地网络接口)
    • 表达式语言作用域:JVM级别定义的环境变量和系统属性
    • 是否敏感:否
    • 是否必需:否
  • Max Batch Size(最大批处理大小):添加到单个FlowFile中的最大消息数。如果有多个消息可用,它们将与“”一起连接,最多达到此配置的最大消息数。
    • 显示名称:Max Batch Size(最大批处理大小)
    • 描述:添加到单个FlowFile中的最大消息数。如果有多个消息可用,它们将与“”一起连接,最多达到此配置的最大消息数。
    • API名称:Max Batch Size(最大批处理大小)
    • 默认值:1
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Max Number of Worker Threads(最大工作线程数):可用于处理TCP连接的最大工作线程数。
    • 显示名称:Max Number of Worker Threads(最大工作线程数)
    • 描述:可用于处理TCP连接的最大工作线程数。
    • API名称:Max Number of TCP Connections(最大TCP连接数)
    • 默认值:2
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Max Size of Message Queue(消息队列最大大小):用于缓冲从底层通道传输到处理器的消息的内部队列的最大大小。将此值设置得更高,可在传入消息激增期间在内存中缓冲更多消息,但会在这些激增期间增加处理器使用的总内存。
    • 显示名称:Max Size of Message Queue(消息队列最大大小)
    • 描述:用于缓冲从底层通道传输到处理器的消息的内部队列的最大大小。将此值设置得更高,可在传入消息激增期间在内存中缓冲更多消息,但会在这些激增期间增加处理器使用的总内存。
    • API名称:Max Size of Message Queue(消息队列最大大小)
    • 默认值:10000
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Max Size of Socket Buffer(套接字缓冲区最大大小):应使用的套接字缓冲区的最大大小。这是向操作系统建议的套接字缓冲区大小。如果此值设置得过低,缓冲区可能在数据读取之前就被填满,从而导致传入数据丢失。
    • 显示名称:Max Size of Socket Buffer(套接字缓冲区最大大小)
    • 描述:应使用的套接字缓冲区的最大大小。这是向操作系统建议的套接字缓冲区大小。如果此值设置得过低,缓冲区可能在数据读取之前就被填满,从而导致传入数据丢失。
    • API名称:Max Size of Socket Buffer(套接字缓冲区最大大小)
    • 默认值:1 MB
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Batching Message Delimiter(批处理消息分隔符):指定在多个消息捆绑在一起时(见“”属性)放置在消息之间的分隔符。
    • 显示名称:Batching Message Delimiter(批处理消息分隔符)
    • 描述:指定在多个消息捆绑在一起时(见“”属性)放置在消息之间的分隔符。
    • API名称:Message Delimiter(消息分隔符)
    • 默认值:\n
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Pool Receive Buffers(池化接收缓冲区):启用或禁用处理器用于处理套接字连接上接收的字节的缓冲区池化。框架会在处理过程中根据需要分配缓冲区。
    • 显示名称:Pool Receive Buffers(池化接收缓冲区)
    • 描述:启用或禁用处理器用于处理套接字连接上接收的字节的缓冲区池化。框架会在处理过程中根据需要分配缓冲区。
    • API名称:pool-receive-buffers
    • 默认值:True
    • 允许值:True、False
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • Port(端口):用于监听通信的端口。
    • 显示名称:Port(端口)
    • 描述:用于监听通信的端口。
    • API名称:Port(端口)
    • 表达式语言作用域:JVM级别定义的环境变量和系统属性
    • 是否敏感:否
    • 是否必需:是
  • Receive Buffer Size(接收缓冲区大小):用于接收消息的每个缓冲区的大小。应根据预期传入消息的大小适当调整此值。
    • 显示名称:Receive Buffer Size(接收缓冲区大小)
    • 描述:用于接收消息的每个缓冲区的大小。应根据预期传入消息的大小适当调整此值。
    • API名称:Receive Buffer Size(接收缓冲区大小)
    • 默认值:65507 B
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:是
  • SSL Context Service(SSL上下文服务):用于获取SSL上下文的控制器服务。如果设置了此属性,消息将通过安全连接接收。
    • 显示名称:SSL Context Service(SSL上下文服务)
    • 描述:用于获取SSL上下文的控制器服务。如果设置了此属性,消息将通过安全连接接收。
    • API名称:SSL Context Service(SSL上下文服务)
    • 服务接口:org.apache.nifi.ssl.SSLContextProviderService
    • 实现类:org.apache.nifi.ssl.PEMEncodedSSLContextProvider、org.apache.nifi.ssl.StandardRestrictedSSLContextService、org.apache.nifi.ssl.StandardSSLContextService
    • 表达式语言作用域:不支持
    • 是否敏感:否
    • 是否必需:否

关系

名称

描述

success

成功接收的消息将通过此关系传出。

写入属性

名称

描述

tcp.sender

消息的发送主机。

tcp.port

接收消息的发送端口。

client.certificate.issuer.dn

对于使用双向TLS的连接,颁发客户端证书的证书颁发机构的可分辨名称将附加到FlowFile。

client.certificate.subject.dn

对于使用双向TLS的连接,客户端证书所有者(使用者)的可分辨名称将附加到FlowFile。

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7