InfoQ ホームページ Event Driven Architecture に関するすべてのコンテンツ
-
Uber社、Apache Kafkaの階層型ストレージ機能を推進、効率性をめぐる議論に拍車
運送会社のUber社が、人気の分散イベントストリーミングプラットフォームApache Kafkaの新たな階層型ストレージ機能追加について、詳細を発表した。本機能は、大規模なKafkaクラスタを運営する組織の直面するスケーラビリティや効率性の課題への対応として3.6.0で追加され、現在、早期アクセスの段階である。
-
Canva、SNS+SQSよりAmazon KDSを選択し、1日250億件のイベントで85%の節約を実現
Canvaは、同社のProduct Analytics Platformのために、AWS SNSとSQSの組み合わせ、MKS、Amazon KDSなど、さまざまなデータメッセージングソリューション群を評価し、主に費用面での大きな優位性から最終的にAmazon KDSを選択した。同社は、パフォーマンス、メンテナンスの労力、コストなど、これらのソリューションに対して多くの側面から比較を行った。
-
Cloudflare R2 Storageがイベント通知とアクセス頻度の低いストレージ層を導入
先日のDeveloper Weekで、CloudflareはオブジェクトストレージR2がイベント通知に対応したと発表した。イベント通知は、データの変更に応じてWorkersを自動的にトリガーする。さらに、マイグレーションサービスのSuper SlurperがGoogle Cloud Storageへのサポートを拡張し、新しいアクセス頻度の低いストレージ層がプライベートベータで利用可能になった。
-
CloudEventsがCloud Native Computing Foundationを卒業:Clemens Vasters氏とのQ&A
今年初め、Cloud Native Computing Foundation(CNCF)はCloudEventsが卒業したことを発表した。CloudEventsは、標準化された方法でイベント・メタデータを公開するように設計された仕様であり、プラットフォーム、サービス、システム間の相互運用性を確保するのに役立つ。
-
HashnodeがStep Functions、EventBridge、RedisでAWS上にスケーラブルなフィードアーキテクチャを構築
Hashnodeは、数千人のユーザーのフィードデータを構成するためのスケーラブルなイベント駆動アーキテクチャ(EDA)を構築した。同社は、Lambda、Step Functions、EventBridge、Redis Cacheを含むAWS上のサーバーレスサービスを使用した。このソリューションは、Step Functionsの分散マップ機能を活用し、高度な並行処理を可能にしている。
-
Uber、GraphQLサブスクリプションとKafkaでマイクロサービスを使用したスケーラブルなチャットを構築
Uberは、WAMPプロトコルを使用して構築されたレガシー・アーキテクチャを、GraphQLサブスクリプションを活用した新しいソリューションに置き換えた。新しいアーキテクチャを構築した主な要因は、信頼性、スケーラビリティ、オブザーバビリティ/デバッグ可能性、そして既存のソリューションを維持するチームの能力を妨げている技術的負債にまつわる課題であった。
-
Amazon EventBridge Event BusのAppSync統合によるリアルタイムデータストリーミング機能
AWSはこの頃、Amazon EventBridge Event BusがEvent BusのターゲットとしてAWS AppSyncをサポートし、開発者がアプリケーションからモバイルやデスクトップを含むフロントエンド・アプリケーションにスポーツのスコアなどのリアルタイム更新をストリーミングできるようになると発表した。
-
PinterestがKafka、Flink、MemQ用の本番環境に対応したPubSub Javaクライアントをオープンソース化
Pinterestは、汎用PubSubクライアントライブラリであるPSCをオープンソース化した。PSCは1年半前から実際に幅広く利用されている。このライブラリは、開発者の速度を向上させ、それを使用するサービスのスケーラビリティと安定性を高めることで、エンジニアリングチームを支援している。Javaアプリケーションの90%以上が、最小限の変更でPSCに移行している。
-
Discord、単一サーバーで100万人以上のオンラインMidJourneyユーザーに拡大
Discordは、応答性の高いユーザー体験を維持しながら、単一サーバーで100万人以上のオンライン・ユーザーにサービスを提供するためにプラットフォームを最適化した。同社は、システム観測可能性とパフォーマンスチューニングに支えられた一連のパフォーマンスとスケーラビリティの改善で、何十億ものメッセージ通知を扇状に流す役割を担うギルドコンポーネントを進化させた。
-
DoorDash社、Flinkを用いて新しいセッション化プラットフォームを開発、通知配信の適時性向上へ
DoorDash社のエンジニアリング・チームのChen Yang氏とFan Zhang氏はこのほど、Apache Flinkを使用して、ユーザーのアクティビティとユーザー・セッションをリアルタイムで識別するApache Flinkによるインメモリ・セッション化プラットフォームを開発した。下図に示す新システムは、DoorDash社が以前直面していた多くの課題の1つである、ユーザーがカートを本当に放棄したのか、それとも単にもっと多くの商品や別の販売店を閲覧したのかを識別する、という問題を解決した。この区別は、タイムリーで適切なカート放棄通知を送信するために非常に重要であった。バッチ処理などの従来の方法では、リソースを大量に消費し、タイムラグが発生するため、リアルタイムの検知はほぼ不可能だった。
-
Expedia、WebSocketとKafkaを使用してほぼリアルタイムのストリーミングデータをクエリする
Expediaは、同社のプラットフォームからのクリックストリームデータをほぼリアルタイムでクエリするソリューションを開発し、同社のプロダクトチームとエンジニアリングチームが、新しいデータ駆動型の機能使用事例に取り組んだり、既存のデータ駆動型の機能使用事例を強化したりしながら、ライブデータを探索できるようにした。チームは、WebSocket、Apache Kafka、PostgreSQLを組み合わせて使用し、クエリ結果をユーザーのブラウザに継続的にストリーミングできるようにした。
-
HubSpotがワークフロー・アクションをタイムリーに処理するためにApache Kafkaスイムレーンを使用する方法
HubSpotは、コンシューマーグループの遅延の蓄積を回避し、リアルタイムのトラフィックの処理を優先するために、同じプロデューサーの複数のKafkaトピック(スイムレーンと呼ばれる)上でメッセージをルーティングすることを採用した。トラフィック急増の自動検知と手動検知を組み合わせて使用することで、同社は顧客の大半のワークフローが遅延なく実行されるようにしている。
-
Reddit、モバイルアプリ全体の新しいフィードアーキテクチャにサーバー駆動型UIを採用
Redditは、iOSモバイルアプリのフィード機能を改良し、Androidアプリにも導入した。どちらのケースでも、モバイルアプリをリリースすることなくローカライズされたコンテンツレイアウトの変更を可能にするServer-Driven UI(SDUI)をコミュニケーションアプローチとして採用した。
-
デリバリーヒーロー、イベント駆動型アーキテクチャで会員システムを最適化する
デリバリーヒーローの所有する韓国のフードデリバリーサービスBaeminはモノリシックアーキテクチャから、より柔軟なイベント駆動型のマイクロサービスベースのシステムへ移行することで、利用者の急激な増加という課題を見事に乗り切った。
-
Grab、AWS上のKafkaコンシューマーのトラフィックコストをゼロに削減
Grabは、Kafka 2.3で導入された、Apache Kafkaコンシューマーが同じアベイラビリティゾーン(AZ)内のブローカーノードに接続する機能を利用し、再構成されたコンシューマーのAWS上のトラフィックコストをゼロに削減した。この変更により、AWS上でApache Kafkaを実行するための全体的なインフラコストが大幅に削減された。