章节目录:

概要

Parasoft Kafka Listener 扩展添加了对 Apache Kafka 消息格式的支持,这样 Virtualize 资产就可以从一个主题中读取单条消息,并在另一个主题上响应单条消息。 

要求

  • Apache Kafka 代理 0.10.0.0 或更高版本
  • Parasoft Virtualize 2020.2 或更高版本

安装

可以从 UI 或命令行中安装此工件。

UI 安装

  1. 选择 Parasoft> 首选项
  2. 系统属性首选项页面,点击添加 JARs
  3. 在打开的文件选择器中,选择 com.parasoft.virtualize.listener.kafka-1.0.jar
  4. 点击应用,重启 Virtualize。

命令行安装

将 kafka.jar 文件添加到设置属性文件中的 system.properties.classpath 属性。例如:

system.properties.classpath=<path to jar>/kafka-listener-1.0.jar

使用说明

安装完成后,Kafka Listener 选项将出现在虚拟资产部署设置中。Kafka 实现可用于除 SQL 响应器之外的所有响应器。

  1. 打开虚拟资产设置,点击传输选项卡。  
  2. 点击自定义选项卡并配置监听器设置(请参阅Configuration)。如果系统有多个自定义扩展,请从“选择实现”下拉菜单中选择 Kafka Listener

配置

该监听器必须同时配置生产者和消费者。

连接设置

Brokers指定 Kafka 运行的以逗号分隔的服务器列表,包括端口。
Security Protocol

指定安全协议。可以指定以下值: 

  • PLAINTEXT - 指定未经验证的非加密通道。
  • SSL - 为 SSL 通道指定。 
  • SASL_PLAINTEXT - 指定经过 SASL 验证的非加密通道。该选项要求额外配置(请参阅 SASL_PLAINTEXT and SASL_SSL)。
  • SASL_SSL - 指定经过 SASL 验证的 SSL 通道(请参阅 SASL_PLAINTEXT and SASL_SSL)。

当此安全协议设置为 SSLSASL_SSL 时,将应用传输层安全(TLS)设置。

SASL_PLAINTEXT 和 SASL_SSL

在提供的 UI 字段中无法完全配置 SASL_PLAINTEXTSASL_SSL 安全协议。要使用这些安全协议,则必须创建配置文件并调整 sasl.jaas.config 属性,使其包含 com.parasoft.soavirt.kafka.shaded 包前缀。下面的示例演示了如何为普通登录模块配置包:

com.parasoft.soavirt.kafka.shaded.apache.kafka.common.security.plain.PlainLoginModule 

Producer SettingsConsumer Settings 下的 Additional Settings File Path 字段中指定配置文件。

消费者设置

Topic

指定用户应该订阅的主题名称或以逗号分隔的主题列表。

可以使用冒号和分区的整数号在主题中指定分区。例如,topic1:0

Group Id指定使用者所属的组。如果没有使用主题指定分区,则需要此属性。
Offset指定要开始读取记录的主题/分区中的位置。
Max Poll Records指定要在间隔期间轮询的最大记录数。默认为 500
Commit Offsets

指定提交偏移量的模式。提交是分区中消费者可以恢复处理记录的点。

  • autocommit: 在此模式下,Kafka 将确定偏移量提交。
  • lastProcessedMessage: 在此模式下,最后处理的消息被设置为提交偏移量。
  • off: 在此模式下,不提交任何偏移量。

默认为 autocommit

Worker Threads指定每个实例中运行的工作线程数。至少为 1。默认为 50
Additional Settings File Path

指定 Virtualize UI 中没有的其他 Kafka 消费者配置。该文件应与正常的 Java 属性文件一致,每行均有 key=value。有关消费者配置属性的详情,请参阅 Kafka 文档:

https://kafka.apache.org/0100/documentation.html#consumerconfigs

生产者设置

Topic指定生产者将向其写入消息的主题的名称。
Partition

指定整数 用于主题中的分区(例如,012)。

如果为空,记录键将用于生成分区号。

Record Key Serializer指定键是应该以字符串形式写入/发送,还是以 null 形式写入/发送。默认值为 字符串
Record Key指定记录键。
Idempotent

指定为 true 以确保只向代理发送一条消息,并且不向代理发送副本。默认为 false

Request Timeout指定在超时之前等待多长时间(以毫秒为单位)来发送和接收确认。默认为 30000
Additional Settings File Path

指定 Virtualize UI 中没有的其他 Kafka 生产者配置。该文件应与正常的 Java 属性文件一致,每行均有 key=value。有关生产者配置属性的详情,请参阅 Kafka 文档:

https://kafka.apache.org/0100/documentation.html#producerconfigs 

传输层安全性

TLS Protocol

定义在建立安全连接时要使用的传输层协议。

默认:TLSv1.2 

Security Provider用于 TLS 连接的安全提供者的名称。默认值违 JVM 的默认安全提供者。
Key Store File Location定义资产(.tst、.pva、.pva)密钥库文件的绝对路径或相对路径。
Key Store Type

定义提供的密钥库文件类型。根据加载到 JVM 的不同安全提供者,可以处理不同的密钥类型。如果向 JVM 添加了其他安全提供者,则选中安全提供者的文档,以收集可用密钥库类型名称。

Key Store Password

定义用于从密钥库文件中提取密钥/证书的密钥。

如果留空,则将尝试在没有密码的情况下提取密钥。

Key Password指定密钥库文件中私有密钥的密码。此设置对客户端而言为可选项。
Trust Store File Location

定义资产(.tst、.pva、.pva)信任库文件的绝对路径或相对路径。

默认:Trust All Certificates 

Trust Store Type

定义提供的信任库文件类型。根据加载到 JVM 的不同安全提供者,可以处理不同的信任库类型。如果向 JVM 添加了其他安全提供者,则选中安全提供者的文档,以收集可用信任库类型名称。

Trust Store Password

定义用于从信任库文件中提取密钥/证书的密码。如果留空,则将尝试在没有密码的情况下提取密钥。

日志 

Log Level

指定要将多少信息记录到控制台。默认为 2(警告)。

第三方内容

此扩展包括来自第三方的资源项,如下:

更多许可证详情可在该插件的 licenses 文件夹中获得。

  • No labels