NashTech

ライトベンド、米航空宇宙大手をカバーするリアクティブ・アプリケーション

米国の大手航空宇宙をカバーするリアクティブ・アプリケーション。

はじめに

このアプリケーションはリアクティブに最適で、ライトベンドのリアクティブ・テクノロジー・スタック全体がその実現に貢献しました。 アプリケーションはマイクロサービスに基づいているため、設計は非常に拡張可能でスケーラブルである。 さらに、アプリケーションの一部が機能不全に陥ったとしても、ダウンタイムに直面することはない。

フリーバードについて

フリーバードは、フライトのキャンセル、4時間の遅延、乗り継ぎの失敗が発生した場合、旅行者が列に並ぶことなく、どの航空会社の新しい航空券でも即座に予約できるモバイル・フライト予約変更プラットフォームを提供している。 このプラットフォームは、フライトが中断した場合に旅行者に即座に通知し、モバイル機器を通じて再予約する機能を提供する。 プロジェクト「thePlatform」は、B2Bプロセスをより簡単にすることを目的としている。 これにより、パートナーはプラットフォームと交流することができる。 フライトが何らかの理由で中断された場合、旅行者はSMSとEメールでさまざまな再予約オプションを受け取る。 その後、旅行者は1つのオプションを選択することができ、freebirdは彼らのために新しいチケットを予約する。

課題

アプリケーションの基本的な流れは非常にシンプルだが、混乱がないかをチェックするために、アプリケーションが米国の航空宇宙全体をカバーする必要があるときに課題が生じる。 単一の情報源では信頼できないため、複数の情報源を使ってフライト状況を追跡している。 再予約のオプションを旅行者に即座に送ることができるように、ステータスは頻繁に取得され、データベースに取り込まれる必要がある。 ソースからステータスを取得するたびに、そのステータスに多くの変更が発生するため、膨大な量のデータを頻繁に処理する必要がある。 これはプラットフォームにとって1つの課題に過ぎず、フライトの空席状況やパートナーの好みにも対応する必要がある。

もうひとつの課題は、旅行が中断された場合の代替便を見つけることだ。 利用可能なフライトは、また別のソースから取得する必要がある。 すべての旅行にはさまざまなシナリオがあり、好みも異なる。代替便のソースを打つ前に、すべてのシナリオをうまく作成しなければならない。 代替便が作成されたら、旅行者にオプションとして送信し、カスタマーケアサービスに十分な情報を提供する。

APIはすべての課題の中で最もシンプルに見えるが、しかし、混乱監視を簡単に行えるように十分な情報を生成するためには、多くの操作を処理する必要がある。 クライアントが作成したデータだけでなく、バックエンドに取り込まれたフライト情報も検索する必要があった。

私たちのソリューション

ナッシュテックは、DDDアプローチによるアプリケーションの構築に着手した。 バウンデッド・コンテキストを特定し、マイクロサービス・アーキテクチャでアプリケーションを作成した。 価格設定と購入のためのAPI以外は、すべて非同期だった。 アーキテクチャはコレオグラフィックに設計され、サービス間のメッセージ・ブローカーとしてkafkaを使用した。 そのストレージレイヤーは、基本的に「分散トランザクションログとして設計された大規模スケーラブルなパブ/サブメッセージキュー」である。 各サービスの内部では、Scalaの関数型プログラミング、フューチャー、そして必要に応じてAkkaを多用した。 データの取り込みプロセスは膨大で、そのため背圧を処理するためにKafkaが各所で使用された。

大量のデータをデータベースに取り込むため、検索は慎重に行う必要があり、そのためElastic Searchを使用した。 これは、検索が行われた可能性のあるデータに基づいてデータの一部を保持し、更新されたデータがデータベースからフェッチされるインデックス・ポイントを返す。

ナッシュテックのスクラムとXPを使った開発方法は、スプリントでプロジェクトを構築するために使われた。 アジャイルであることの利点は、プロジェクトの開発期間中にたくさん発見された。 e2eテストケースの数が最も少なく、e2eよりも統合テストケースが多く、ユニットテストケースが大部分を占めるピラミッド型テストケース戦略を考慮し、TDDに高い焦点を当てた。 GitFlowがブランチ戦略として使用されたため、コード管理で苦労することはなかった。

その結果

テクノロジー・スタックとアーキテクチャは、プラットフォームに求められるSLAを満たしていた。 このアプリケーションはリアクティブに最適で、ライトベンドのリアクティブ・テクノロジー・スタック全体がその実現に貢献しました。 アプリケーションはマイクロサービスに基づいているため、設計は非常に拡張可能でスケーラブルである。 さらに、アプリケーションの一部が機能不全に陥ったとしても、ダウンタイムに直面することはない。

ケーススタディをもっと読む

仮想学習環境をAWSに移行して近代化し、体験の向上を図る。

移行され近代化されたMoodle インフラストラクチャーは、オープン 大学は今、次のような利点がある。 クラウドのメリット

大手デジタル広告サービスとの1年にわたるRPAの旅を垣間見る

大手デジタル広告サービス・ソリューションプロバイダーの1年にわたるRPAの旅と、NashTechがどのように彼らを支援したかをご紹介します。

デジタル棚の分析をサポートし、eコマースの成長を引き出す

NashTechがどのようにデジタル棚の分析を支援し、世界有数のデータ洞察とeコマースソリューションプロバイダーと成長を解き放つかをご覧ください。

私たちのパートナーシップ

上部へスクロール
サンプル・タイトル
サンプルショート
サンプル見出し
JA FREE WHITEPAPER
新しいホワイトペーパーで知識の力を解き放つ
「プロダクトオーナーのユーザーエクスペリエンスを向上させる」
無料ホワイトペーパー
新しいホワイトペーパーで知識の力を解き放とう
「プロダクト・オーナーのためのユーザー・エクスペリエンスの向上