導入 最近、私は Pulsar と Kafka の比較を調べています。ちょっと検索してみると、最も有名な 2 つのオープン ソース メッセージング システム間で「戦争」が続いていることがわかります。 Kafka ユーザーとして、私は Kafka のいくつかの問題に確かに困惑しており、Pulsar には非常に失望しています。それで、ようやく時間をかけて調査することができ、たくさんの調査をしました。この記事では、Pulsar の利点を強調し、Kafka よりも Pulsar を検討する理由をいくつか紹介します。ただし、製品の使用方法、サポート、コミュニティ、ドキュメントなどについては明確にしてください。 Kafka は明らかに Pulsar より優れているため、この記事で説明した利点のほとんどが自分のユースケースに適している場合にのみ Pulsar を検討してください。さあ始めましょう!
Kafka の基礎 Kafka はメッセージング システムの王様です。これは 2011 年に LinkedIn によって作成され、Confluent のサポートにより広く配布されるようになりました。 Confluent は、スキーマ進化のための Schema Registry、他のデータ ソースからの簡単なストリーミングのための Kafka Connect など、オープン ソース コミュニティに多くの新機能とアドオンをリリースしました。データベースから Kafka、分散ストリーム処理用の Kafka Streams、最近では Kafka トピックに対する SQL のようなクエリ用の KSQL などがあります。また、多くのシステム用のコネクタも多数あります。詳細については、Confluent Platform をご覧ください。 Kafka は高速で、インストールが簡単で、非常に人気があり、幅広い範囲やユースケースに使用できます。 Apache Kafka は開発者の観点からは常に使いやすいものでしたが、運用面では混乱していました。それでは、Kafka の問題点のいくつかを見てみましょう。 > Kafka の例。出典: https://talks.rmoff.net/pZC6Za/slides カフカの問題点
ご覧のとおり、ほとんどの問題は運用面と関連しています。 Kafka はインストールが比較的簡単ですが、管理と調整が困難です。さらに、柔軟性と回復力はまだ十分ではありません。 パルサーの基礎 Pulsar は 2013 年に Yahoo によって作成され、2016 年に Apache Foundation に寄贈されました。現在、Pulsar は Apache のトップレベル プロジェクトとなっています。 Yahoo、Verizon、Twitter などの企業では、何百万ものメッセージを処理するために実稼働で使用されています。多くの機能があり、非常に柔軟性があります。 Kafka よりも高速で、実行コストが安いと言われています。 Kafka の問題点のほとんどを解決し、スケーリングを容易にすることを目的としています。 Pulsar は非常に柔軟性があります。 Kafka のような分散ログや、RabbitMQ のような純粋なメッセージング システムも可能です。複数のタイプのサブスクリプション、複数の配信保証、保持ポリシー、およびスキーマの進化を処理する複数の方法があります。機能も多数あります... > Pulsar アーキテクチャ: https://pulsar.apache.org/docs/en/concepts-architecture-overview/ パルサーの特徴
> 機能一覧: https://pulsar.apache.org/ ご覧のとおり、Pulsar には興味深い機能が多数あります。 パルサーハンズオン Pulsar を使い始めるのはとても簡単です。 JDK がインストールされていることを確認してください。
Pulsar は、クラスターと対話するために使用できる pulsar-client と呼ばれる CLI ツールを提供します。 メッセージの生成:
メッセージを読む:
Akka ストリームの例 クライアントの例として、Akka で Pulsar4s を使用しましょう。 まず、データ ストリームを消費するためのソースを作成する必要があります。必要なのは、要求に応じてコンシューマーを作成し、メッセージ ID を検索する関数だけです。
次に、consumerFn 関数を渡してソースを作成します。
Akka ソースの具体化された値は Control のインスタンスであり、メッセージの消費を停止するために使用できる "close" メソッドを提供します。これで、通常どおり Akka Streams を使用してデータを処理できます。 受信機を作成するには:
完全な例は Pulsar4s から引用したものです: パルサー関数の例 Pulsar 関数は、1 つ以上のトピックからのメッセージを処理し、変換して、結果を別のトピックに出力します。 > パルサー関数。出典: https://pulsar.apache.org/docs/en/functions-overview/ 関数を記述するための 2 つのインターフェースから選択できます。
言語ネイティブ インターフェイスの使用は非常に簡単で、メッセージを変換するための簡単な関数を記述するだけです。
Python で記述されたこの単純な関数は、すべての受信文字列に感嘆符を追加し、結果の文字列をトピックに公開するだけです。 SDK を使用するには、依存関係をインポートする必要があります。たとえば、Go では次のように記述します。
サーバーレス関数をクラスターに公開してデプロイするには、pulsar-admin CLI を使用します。 Python を使用する場合は、次のようにします。
Pulsar Functions の優れた機能の 1 つは、関数を公開するときに配信保証を設定できることです。
オプションは次のとおりです: パルサーの利点 Kafka と比較した主な利点を見てみましょう。
パルサーの問題 Pulsar は完璧ではありませんが、Kafka が人気があるのには理由があります。Kafka は 1 つのことだけをうまくこなします。 Pulsar は、あまりにも多くの領域に対処しようとしていますが、いずれか 1 つの領域を超えることはありません。 Pulsar の問題点をいくつかまとめてみましょう。
Confluent には Pulsar と Kafka の比較があり、そこでさらに詳しく説明されています。このブログでは、Kafka と Pulsar に関するいくつかの質問にも答えていますが、これらの質問には偏りがある可能性があることに注意してください。 パルサーの使用例 Pulsar は幅広いユースケースに使用できます。
Pulsar を検討すべきなのはいつですか?
なお、クラウドの場合は、クラウドベースのソリューションを検討してください。クラウド プロバイダーには、特定のユース ケースをカバーするさまざまなサービスがあります。たとえば、キュー メッセージングの場合、クラウド プロバイダーは Google pub/sub などの多くのサービスを提供しています。分散ログには、Confluent Cloud または AWS Kinesis があります。クラウドプロバイダーは非常に優れたセキュリティも提供します。 Pulsar の利点は、単一のプラットフォームで多くの機能を提供できることです。チームによっては、これをマイクロサービスのメッセージング システムとして使用する場合もあれば、データ処理用の分散ログとして使用する場合もあります。 結論は 私はカフカの大ファンなので、Pulsar にとても興味があります。競争は良いことであり、イノベーションを促進します。 Kafka は、世界中で大きな成功を収めた、成熟した、回復力のある、実戦でテストされた製品です。それがない会社は想像できません。しかし、Kafka は自身の成功の犠牲者になりつつあると私は考えています。Kafka は、多くの大企業をサポートする必要があったため、急成長によって機能開発が遅くなっているのです。 ZooKeeper 依存関係などの重要な機能を削除するのに時間がかかりすぎました。これにより、Pulsar のようなツールが繁栄する余地が生まれました。 Kafka のいくつかの問題を修正し、さらに機能を追加します。 しかし、Pulsar はまだ非常に未熟なので、生産に投入する前には細心の注意を払う必要があります。 Pulsar を組織に導入する前に、分析、ベンチマーク、調査を実行し、概念実証を作成します。小規模から始めて、Kafka から移行する前に概念実証を行い、完全な移行を決定する前に影響を評価します。 |
<<: 中小企業がクラウドに移行する際に考慮すべき問題は何ですか?
>>: テンセントがWeMapをリリース、産業用インターネットマップの新時代を切り開く
米国の老舗データセンターである Raksmart (2008 年に設立され、米国サンノゼに独自の独立...
18vps.com の Fa 氏は個人的に、鎮江電信に 2 台のキャビネットがあり、1 年以上運用さ...
新華社、北京、5月19日。米司法省は19日、いわゆるサイバースパイ行為を理由に中国軍将校5人を起訴し...
オランダに正式に登録された会社であるcontraweb.netは、主に仮想ホスティング、VPS、サー...
このタイトルを見てすぐに意味が分かる人も多いと思いますが、今日は検索エンジン最適化の観点からこの文章...
最近ウェブマスター界隈で話題になっていた百度シェアが、急に効力が弱くなった。このウェブサイトの背後に...
IDC の Global Cloud IT Infrastructure Quarterly Tra...
[51CTO.comより引用] 福耀玻璃工業集団(以下、福耀玻璃)は中国最大、世界第2位の自動車ガラ...
医療業界の SEO 競争は非常に激しいと言えます。病院のウェブサイトの SEO に取り組んだことがあ...
contabo のブラックフライデーをご紹介します。VPS、VDS、専用サーバー、ブロックストレージ...
近年、電子商取引は急速に発展しており、多くの地元ブランドは、他社が電子商取引で大儲けしているのを見て...
紹介:moonvm(新商人)は、主に台湾のコンピューター室でKVM仮想化に基づくVPSを運営し、台湾...
チャイナベンチャーグループは昨日、2012年の中国のM&A市場の公表取引額が3,077億9,...
ストレージ ユニット単位で管理するのは明らかに非現実的であるため、Linux では仮想メモリ空間...
「私にとって最も辛いのは、廃棄される在庫1000万相当の契約を自らの手で締結したことだ」と、すでに破...