この記事はWeChatの公開アカウント「Mingge's IT Essays」から転載したもので、著者はIT Minggeです。この記事を転載する場合は、Mingge の IT Essays 公開アカウントにご連絡ください。 1 はじめにみなさんこんにちは、ミン兄弟です! オープンソースの分散イベント ストリーム プラットフォームである KAFKA には、ビッグ データやマイクロサービスの分野で幅広いアプリケーション シナリオがあります。これは、リアルタイム ストリーム処理シナリオにおけるメッセージ キューの事実上の標準です。一言でまとめると、KAFKA はリアルタイム データ ウェアハウスの基礎であり、イベント駆動型アーキテクチャの魂です。 しかし、一部の技術パートナー、特に KAFKA を非常に早い段階で使い始めたパートナーは、KAFKA の開発動向やいくつかの新機能にあまり精通しておらず、使用中に多くの落とし穴に遭遇しています。 これを踏まえて、次回は KAFKA シリーズの記事を掲載し、KAFKA のこれらの新機能について具体的に説明します。 この記事は、KAFAK のべき等プロデューサーに関するシリーズの一部です。 以下が本文です。 2. 歴史的観点から見たKAFKAの発展まず、KAFKA の発展を歴史的な観点から見てみましょう。
カフカタイムライン カフカAPI 3 べき等プロデューサーとは何ですか?Kafka プロデューサーがブローカー内のトピックにデータを送信すると、ネットワーク ジッターなどのさまざまな理由により、プロデューサーがブローカーの ack 確認情報を受信しない可能性があることがわかっています。この時点でプロデューサーには 2 つの選択肢があります。 プロデューサーは、ack 確認メッセージを受信しなかったという事実を無視し、それ以上の処理を行わないことを選択できます。この場合、メッセージが失われる可能性があります。 (メッセージがブローカーのトピックに書き込まれていない可能性があるため、これは可能ですが、ブローカーのトピックに正しく書き込まれているが、ネットワーク ジッターのためにコールバック ack メッセージがプロデューサーによって受信されなかった可能性もあります。) プロデューサーは、ack 確認メッセージを受信するか、再試行の最大回数に達するまで、メッセージを複数回再送信することもできます。これにより、メッセージの重複書き込みが発生する可能性があります。つまり、ブローカー側のトピックは、これらの再試行されたメッセージを繰り返し保存します。 プロデューサーが ack 確認を受信していないメッセージを再送信すると、ブローカーのトピックのパーティション内のメッセージの順序が乱れる可能性もあります。つまり、失敗のために再送信されたメッセージは、失敗しておらず再送信する必要のないメッセージの後に送信されます。 プロデューサーが ack 確認を受信していないメッセージを再送信することによって発生するデータ重複の問題は、次の図に示されています。メッセージ 7/8/9/10 は重複メッセージです。 プロデューサー再送信失敗 KAFKA のべき等プロデューサーは上記の問題を解決します。つまり、メッセージが損失や重複なくブローカーに正しく配信され、トピックの各パーティションに正しい順序で保存されることを保証します。 4 べき等プロデューサーを有効にするにはどうすればいいですか?
5 べき等プロデューサーの原則とは何ですか?まず、べき等プロデューサーが有効になっている場合、メッセージが失敗したときのメッセージの再送信は Kafka クライアントによって自動的に実装されることを説明する必要があります。これは私たちにとって透過的であり、コードの送信を再試行する必要はありません。 (実際、コード内でメッセージの送信を再試行すると、メッセージが重複することになります)。 内部的には次のように動作します。
6. べき等プロデューサーはトランザクションとどのように関係しますか?べき等プロデューサーは Kafka トランザクションの必要条件ですが、十分な条件ではありません。 べき等グロワーを有効にするときにトランザクションを有効にする必要はありません。 Kafka トランザクションを開始するには、べき等プロデューサーを有効にする必要があります。 実際、Kafka トランザクションを開始すると、Kafka は自動的にべき等プロデューサーを開始します。 |
<<: グランドビューリサーチ:クラウドコンピューティング市場は2028年に12510.9億ドルに達する
インターネットが人類にもたらした革新は明白ですが、さらに大きな影響力があるのは、インターネットが伝統...
1. 中央銀行がオンライン決済監督の嵐を巻き起こし、アリババとテンセントの競争の内幕が明らかにこれは...
ウェブサイトの信頼性は、ユーザー エクスペリエンスと、SEO 担当者による最新の検索エンジン アルゴ...
virpus、年末特別プロモーション、SolusVM コントロール パネルを使用、データ センターは...
最近のテクノロジー業界で最もホットな流行語は「デジタルトランスフォーメーション」です。これは、企業が...
トラフィックはウェブサイトの血液であり、重みはウェブサイトに血液が完全に補給されていることを保証する...
百度が当初の計画を発足して以来、多くの草の根ウェブマスターにとって大きな打撃となっている。以前はウェ...
2010 年と 2011 年には、クラウド コンピューティングの明るい未来についての予測がニュースの...
伝説の金持ちイケメンホスト、メディアテンプルを利用したことがありますか?月額 20 ドルの仮想ホスト...
最近、Baidu はちょっと予測不能です。ネットワーク環境を整えるという名目で、狂ったようにサイトを...
店を女性、買い手を男性に例えると、天猫店は「大きなブラジャー」を着ているようなもので、コメント欄に実...
昨年4月、BAYC Bored Ape Yacht Clubの立ち上げにより、NFT(非代替性トーク...
優れたブログは、企業にとって独立した販売チャネルとなり、顧客関係を維持するためのプラットフォームとな...
最適化の道はこれからも前進し続けることができるのか?これが今、すべての最適化担当者の声です。現在の最...
前回の 2 つの記事「分析の前提条件 - データ品質 1」と「分析の前提条件 - データ品質 2」で...