インターフェース KafkaOperations<K,V>

型パラメーター:
K - 鍵の型。
V - 値型。Kafka トピックが CreateTime で設定されている場合、すべての送信操作は、提供されている場合はユーザー提供の時間を使用します。そうでない場合、KafkaProducer はそれを生成します。トピックが LogAppendTime で設定されている場合、ユーザー提供のタイムスタンプは無視され、代わりに Kafka ブローカーのローカル時間になります。メッセージが添えられています
すべての既知の実装クラス:
AggregatingReplyingKafkaTemplateKafkaTemplateReplyingKafkaTemplateRoutingKafkaTemplate

public interface KafkaOperations<K,V>
CompletableFutureSE を返す基本的な Kafka オペレーション契約。
作成者:
Marius Bogoevici, Gary Russell, Biju Kunjummen, Giacomo Baso
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型
    インターフェース
    説明
    static interface
    KafkaOperations で任意の操作を実行するためのコールバック。
    static interface
    Producer で任意の操作を実行するためのコールバック。
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final DurationSE
    receive(String, int, long) のデフォルトのタイムアウト。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    <T> T
    プロデューサーで任意の操作を実行し、結果を返します。
    <T> T
    操作に対して任意の操作を実行し、結果を返します。
    void
    プロデューサーをフラッシュします。
    このテンプレートで使用されるプロデューサーファクトリを返します。
    default boolean
    テンプレートが呼び出しスレッドのトランザクションで現在実行されている場合は true を返します。
    default boolean
    このテンプレートがトランザクションの場合、トランザクション以外の操作を許可する場合は true を返します。
    boolean
    実装がトランザクションをサポートしている (トランザクション対応のプロデューサーファクトリがある) 場合は true を返します。
    MapSE<org.apache.kafka.common.MetricName,? extends org.apache.kafka.common.Metric>
    Producer.metrics() を参照してください。
    ListSE<org.apache.kafka.common.PartitionInfo>
    Producer.partitionsFor(String) を参照してください。
    default org.apache.kafka.clients.consumer.ConsumerRecord<K,V>
    receive(StringSE topic, int partition, long offset)
    デフォルトのポーリングタイムアウト(5 秒)で単一のレコードを受信します。
    org.apache.kafka.clients.consumer.ConsumerRecord<K,V>
    receive(StringSE topic, int partition, long offset, DurationSE pollTimeout)
    単一のレコードを受け取ります。
    default org.apache.kafka.clients.consumer.ConsumerRecords<K,V>
    デフォルトのポーリングタイムアウト(5 秒)で複数のレコードを受信します。
    org.apache.kafka.clients.consumer.ConsumerRecords<K,V>
    複数のレコードを受信します。
    send(StringSE topic, IntegerSE partition, LongSE timestamp, K key, V data)
    提供されたキーとパーティションを使用して、提供されたトピックにデータを送信します。
    send(StringSE topic, IntegerSE partition, K key, V data)
    提供されたキーとパーティションを使用して、提供されたトピックにデータを送信します。
    send(StringSE topic, K key, V data)
    提供されたキーを使用して、パーティションなしで、提供されたトピックにデータを送信します。
    send(StringSE topic, V data)
    キーまたはパーティションなしで、提供されたトピックにデータを送信します。
    send(org.apache.kafka.clients.producer.ProducerRecord<K,V> record)
    提供された ProducerRecord を送信します。
    send(Message<?> message)
    メッセージヘッダーにルーティング情報を含むメッセージを送信します。
    sendDefault(IntegerSE partition, LongSE timestamp, K key, V data)
    提供されたキーとパーティションを使用して、データをデフォルトのトピックに送信します。
    sendDefault(IntegerSE partition, K key, V data)
    提供されたキーとパーティションを使用して、データをデフォルトのトピックに送信します。
    sendDefault(K key, V data)
    提供されたキーを使用してパーティションなしでデータをデフォルトのトピックに送信します。
    キーまたはパーティションなしでデータをデフォルトトピックに送信します。
    default void
    sendOffsetsToTransaction(MapSE<org.apache.kafka.common.TopicPartition,org.apache.kafka.clients.consumer.OffsetAndMetadata> offsets, org.apache.kafka.clients.consumer.ConsumerGroupMetadata groupMetadata)
    トランザクションで実行する場合は、コンシューマーオフセットをトランザクションに送信します。
  • フィールドの詳細

  • メソッドの詳細

    • sendDefault

      キーまたはパーティションなしでデータをデフォルトトピックに送信します。
      パラメーター:
      data - データ。
      戻り値:
      SendResult の未来。
    • sendDefault

      CompletableFutureSE<SendResult<K,V>> sendDefault(K key, @Nullable V data)
      提供されたキーを使用してパーティションなしでデータをデフォルトのトピックに送信します。
      パラメーター:
      key - キー。
      data - データ。
      戻り値:
      SendResult の未来。
    • sendDefault

      CompletableFutureSE<SendResult<K,V>> sendDefault(IntegerSE partition, K key, @Nullable V data)
      提供されたキーとパーティションを使用して、データをデフォルトのトピックに送信します。
      パラメーター:
      partition - パーティション。
      key - キー。
      data - データ。
      戻り値:
      SendResult の未来。
    • sendDefault

      CompletableFutureSE<SendResult<K,V>> sendDefault(IntegerSE partition, LongSE timestamp, K key, @Nullable V data)
      提供されたキーとパーティションを使用して、データをデフォルトのトピックに送信します。
      パラメーター:
      partition - パーティション。
      timestamp - レコードのタイムスタンプ。
      key - キー。
      data - データ。
      戻り値:
      SendResult の未来。
      導入:
      1.3
    • send

      キーまたはパーティションなしで、提供されたトピックにデータを送信します。
      パラメーター:
      topic - トピック。
      data - データ。
      戻り値:
      SendResult の未来。
    • send

      CompletableFutureSE<SendResult<K,V>> send(StringSE topic, K key, @Nullable V data)
      提供されたキーを使用して、パーティションなしで、提供されたトピックにデータを送信します。
      パラメーター:
      topic - トピック。
      key - キー。
      data - データ。
      戻り値:
      SendResult の未来。
    • send

      CompletableFutureSE<SendResult<K,V>> send(StringSE topic, IntegerSE partition, K key, @Nullable V data)
      提供されたキーとパーティションを使用して、提供されたトピックにデータを送信します。
      パラメーター:
      topic - トピック。
      partition - パーティション。
      key - キー。
      data - データ。
      戻り値:
      SendResult の未来。
    • send

      CompletableFutureSE<SendResult<K,V>> send(StringSE topic, IntegerSE partition, LongSE timestamp, K key, @Nullable V data)
      提供されたキーとパーティションを使用して、提供されたトピックにデータを送信します。
      パラメーター:
      topic - トピック。
      partition - パーティション。
      timestamp - レコードのタイムスタンプ。
      key - キー。
      data - データ。
      戻り値:
      SendResult の未来。
      導入:
      1.3
    • send

      CompletableFutureSE<SendResult<K,V>> send(org.apache.kafka.clients.producer.ProducerRecord<K,V> record)
      提供された ProducerRecord を送信します。
      パラメーター:
      record - レコード。
      戻り値:
      SendResult の未来。
      導入:
      1.3
    • send

      メッセージヘッダーにルーティング情報を含むメッセージを送信します。メッセージペイロードは、送信前に変換される場合があります。
      パラメーター:
      message - 送信するメッセージ。
      戻り値:
      SendResult の未来。
      関連事項:
    • partitionsFor

      ListSE<org.apache.kafka.common.PartitionInfo> partitionsFor(StringSE topic)
      Producer.partitionsFor(String) を参照してください。
      パラメーター:
      topic - トピック。
      戻り値:
      パーティション情報。
      導入:
      1.1
    • metrics

      MapSE<org.apache.kafka.common.MetricName,? extends org.apache.kafka.common.Metric> metrics()
      Producer.metrics() を参照してください。
      戻り値:
      メトリクス。
      導入:
      1.1
    • execute

      @Nullable <T> T execute(KafkaOperations.ProducerCallback<K,V,T> callback)
      プロデューサーで任意の操作を実行し、結果を返します。
      型パラメーター:
      T - 結果の型。
      パラメーター:
      callback - コールバック。
      戻り値:
      結果。
      導入:
      1.1
    • executeInTransaction

      @Nullable <T> T executeInTransaction(KafkaOperations.OperationsCallback<K,V,T> callback)
      操作に対して任意の操作を実行し、結果を返します。操作はローカルトランザクション内で呼び出され、グローバルトランザクション (存在する場合) には参加しません。
      型パラメーター:
      T - 結果の型。
      パラメーター:
      callback - コールバック。
      戻り値:
      結果。
      導入:
      1.1
    • flush

      void flush()
      プロデューサーをフラッシュします。
    • sendOffsetsToTransaction

      default void sendOffsetsToTransaction(MapSE<org.apache.kafka.common.TopicPartition,org.apache.kafka.clients.consumer.OffsetAndMetadata> offsets, org.apache.kafka.clients.consumer.ConsumerGroupMetadata groupMetadata)
      トランザクションで実行する場合、コンシューマーオフセットをトランザクションに送信します。操作がリスナーコンテナースレッドで呼び出された場合 (およびリスナーコンテナーが KafkaAwareTransactionManager で構成されている場合) は、コンテナーがトランザクションへのオフセットの送信を処理するため、このメソッドを呼び出す必要はありません。2.5 ブローカー以降で使用します。
      パラメーター:
      offsets - オフセット。
      groupMetadata - コンシューマーグループのメタデータ。
      導入:
      2.5
      関連事項:
      • Producer.sendOffsetsToTransaction(Map, ConsumerGroupMetadata)
    • isTransactional

      boolean isTransactional()
      実装がトランザクションをサポートしている (トランザクション対応のプロデューサーファクトリがある) 場合は true を返します。
      戻り値:
      正しいか間違っているか。
      導入:
      2.3
    • isAllowNonTransactional

      default boolean isAllowNonTransactional()
      このテンプレートがトランザクションの場合、トランザクション以外の操作を許可する場合は true を返します。
      戻り値:
      許可する場合は true。
      導入:
      2.4.3
    • inTransaction

      default boolean inTransaction()
      テンプレートが呼び出しスレッドのトランザクションで現在実行されている場合は true を返します。
      戻り値:
      トランザクションが実行されている場合は true。
      導入:
      2.5
    • getProducerFactory

      default ProducerFactory<K,V> getProducerFactory()
      このテンプレートで使用されるプロデューサーファクトリを返します。
      戻り値:
      ファクトリ。
      導入:
      2.5
    • receive

      @Nullable default org.apache.kafka.clients.consumer.ConsumerRecord<K,V> receive(StringSE topic, int partition, long offset)
      デフォルトのポーリングタイムアウト(5 秒)で単一のレコードを受信します。
      パラメーター:
      topic - トピック。
      partition - パーティション。
      offset - オフセット。
      戻り値:
      レコードまたは null。
      導入:
      2.8
      関連事項:
    • receive

      @Nullable org.apache.kafka.clients.consumer.ConsumerRecord<K,V> receive(StringSE topic, int partition, long offset, DurationSE pollTimeout)
      単一のレコードを受け取ります。
      パラメーター:
      topic - トピック。
      partition - パーティション。
      offset - オフセット。
      pollTimeout - タイムアウト。
      戻り値:
      レコードまたは null。
      導入:
      2.8
    • receive

      default org.apache.kafka.clients.consumer.ConsumerRecords<K,V> receive(CollectionSE<TopicPartitionOffset> requested)
      デフォルトのポーリングタイムアウト(5 秒)で複数のレコードを受信します。絶対的な正のオフセットのみがサポートされます。
      パラメーター:
      requested - レコードリクエストのコレクション(トピック / パーティション / オフセット)。
      戻り値:
      レコード
      導入:
      2.8
      関連事項:
    • receive

      org.apache.kafka.clients.consumer.ConsumerRecords<K,V> receive(CollectionSE<TopicPartitionOffset> requested, DurationSE pollTimeout)
      複数のレコードを受信します。絶対的な正のオフセットのみがサポートされます。
      パラメーター:
      requested - レコードリクエストのコレクション(トピック / パーティション / オフセット)。
      pollTimeout - タイムアウト。
      戻り値:
      レコードまたは null。
      導入:
      2.8