solace源连接器“tasks.max”如何连接到队列?

gblwokeq  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(462)

我们正在实现一个kafka主题,它是一个3机器集群。我们将要离开一个慰藉队,想知道这是什么 tasks.max 参数以及它如何划分消息。我们无法访问solace队列,只能调用并查看是否正在从缓冲区中删除消息。任何洞察力都太好了!当前系统在一个hornetq中,它正在运行5个线程。
环境:
分配模式
1个主题
3个副本
每台机器5个分区
solace kafka连接器源程序
我们已经尝试了它在独立的一个单一的任务,它的工作。因为我们不控制安慰队列,所以我们可以看到是否正在丢弃消息。

{
    "name": "solaceSourceConnector",
    "config": {
        "connector.class":
"com.solace.source.connector.SolaceSourceConnector",
        "tasks.max": "1",
        "kafka.topic": "solacetest",
        "sol.host": "HOSTNAME",
        "sol.username": "USERNAME",
        "sol.password": "PASSWORD",
        "sol.vpn_name": "VPN IP",
        "sol.topics": "soltest, soltest1,solacetest2",
        "sol.queue": "testQ",
        "sol.message_processor_class": "com.solace.source.connector.msgProcessors.SolaceSampleKeyedMessageProcessor",
        "sol.generate_send_timestamps": "true",
        "sol.generate_rcv_timestamps": "true",
        "sol.sub_ack_window_size": "255",
        "sol.generate_sequence_numbers": "true",
        "sol.calculate_message_expiration": "true",
        "sol.subscriber_dto_override": "true",
        "sol.channel_properties.connect_retries": "-1",
        "sol.channel_properties.reconnect_retries": "-1",
        "sol.kafka_message_key": "DESTINATION",
        "sol.ssl_trust_store": "/opt/PKI/skeltonCA/heinz1.ts",
        "sol.ssl_trust_store_pasword": "sasquatch",
        "sol.ssl_trust_store_format": "JKS",
        "sol.ssl_key_store": "/opt/PKI/skeltonCA/heinz1.ks",
        "sol.ssl_key_store_password": "sasquatch",
        "sol.ssl_key_store_format": "JKS",
        "sol.ssl_key_store_normalized_format": "JKS",
        "sol.ssl_private_key_alias": "heinz1",
        "sol.ssl_private_key_password": "sasquatch"
    }

}

我正在努力做到这一点,这样我们就不会丢失缓冲区中的消息。

oymdgrw7

oymdgrw71#

max.tasks 1将与独占队列一起工作,因为只有一个活动订阅服务器可以访问这种solace队列。它还将保证信息秩序从慰藉到Kafka都得到维护。
如果solace队列是非排他(即共享)队列,那么增加max.tasks将定义从队列中消费的并发solace客户端数量的上限。这允许使用队列中的多个使用者进行水平扩展,以获得更好的吞吐量。然而,solace不能保证在非独占队列的多个使用者之间的消息顺序,因此消息顺序可能无法保留。
在这两种情况下,信息不会丢失,因为它们不会被确认回安慰,直到它们成功地确认已写入Kafka之后才被删除。

相关问题