Kafka APIの説明

1864 ワード

Apache Kafkaには、新しいjavaクライアント(in)が含まれています。 the org.apache.kafka.cints package。これはまた、古いScalを置き換えるために実装されるクライアントツールを意味するが、互換性を考慮してこれらの古いツール実装はまだしばらくの間存在し続けるだろう。
1.Producer API
新しいJavaをお勧めします。 Producerは、このクライアントツールは生産環境標準のテストを経て、古いScalクライアントより速く、機能がより全面的です。
Mavenに基づいて開発されたjavaプロジェクトについては、次のような依存関係の配置を追加することにより、Kafkaに対する対応が完了します。 Prodcer APIツールの統合:

    org.apache.kafka
    kafka-clients
    0.9.0.0
より多くの開発説明文書は、javadocsを参照してください。 。古いScara プロデュース アプリの使用はhereにあります。 。
2.Consmer API
0.9.0バージョンから始まり、Kafkaに新たなJavaが追加されました。 consumerは、前に使ったhigh-levelの代わりに使います。 Zoo Keeper-based consumer 和 low-level consumer API 。新しいJava consumerはより良い品質保証があります。しかし、現在も新旧consumerをサポートしています。 clients 。
(1) Old high-level Zoo Keeper-based consumer
なぜこのような方式をhigh-levelと呼ぶのですか?多くのメッセージ使用シーンにおいて、消費者のアプリケーションは、メッセージ・データのoffsetに関心を持たずに、メッセージ・キューから最新のデータを取得することに関心があるからである。だから、high-level consumer APIは、このような使用シーンに対して様々なサービスをパッケージ化し、commereに使用されるツールの一つです。
あなたは公式のAPI開発例を参照して、高揚を使うことを学ぶことができます。 vel consumer アプリ、 this example 。
(2) Old Simple Consmer API
Simple Consmer APIは、実際にはより低い層のAPIで実現される。一部のアプリケーションがアプリケーションの再起動や回復を希望する場合がありますので、kafkaを指定できます。 topicのinitial offsetは、ここからメッセージデータを再取得して処理するか、またはtopicを使用する複数のpartitionsのうちのどれかを指定する必要がある。この場合、Simpleの使用を考慮することができます。 Consmer APIは、実はLowとも言える。 vel Simple Consmer アプリ 。関連する開発の実現ロジックは複雑です。公式サイトの例を参照してください。 the example in here 。
(3) New Consmer API
新規提供のNew Consmer APIは、以前の複数のAPIで実現された機能を統合し、統合して実装している。mavenプロジェクトでclientを増やすことができます。 jarの依存関係定義は、このNewを使い始めます。 Consmer API 。

    org.apache.kafka
    kafka-clients
    0.9.0.0
New Consmer APIの公式開発例ドキュメントはここにあります。javadocs 。