Netflixも採用しているアプリケーション状態管理プラットフォーム複雑性のキーは「状態管理」

状態管理はアプリケーション開発において重要かつ面倒な機能だ。バグやセキュリティホールの温床であり、トラックは難しい。この部分が簡便化される意義は極めて大きい。

2022年04月26日 08時00分 公開
[Adrian BridgwaterComputer Weekly]

 Temporal社は、ワークフローサービス「Amazon Simple Workflow」(Amazon SWF、文末参照)の設計と開発を主導していた2人のアプリケーション状態管理専門家が設立した企業だ。

 アプリケーション状態管理とは、任意の時点におけるアプリケーションの状態を把握するために、ビジネストランザクション(あるいはセッション)を構成する複数のデータフローでアプリケーションへの入力に関する情報を維持するプロセスを指す。

 「コンピュータサイエンスでは、ユーザーがプログラムに投入する情報を『入力』と呼び、変数または定数として保存された入力に応じたアプリケーションの様相を『状態』という。状態は、セッション全体を形成する情報の集合体とも表現できる」とTechTargetのトム・ノール氏は説明する。

 話をTemporal社に戻そう。同社の「Temporal」はアプリケーションの状態を管理するためのプラットフォームだ。

iStock.com/metamorworks

 Temporal社のマキシム・ファテエフ氏(共同設立者兼CEO)は言う。「平均的なビジネスアプリケーションは、数十のステートフルなサーバやサービスにまたがる形で稼働している。これは柔軟性やスケーラビリティの点では優れているが、アプリケーションの不安定さが増し、トラブルシューティングや機能強化を難しくしている」

 このコメントは、クラウドデプロイのメリットは非常に大きいが、クラウドアプリケーションが複雑になるという代償は耐え難いという感情を表している。

 コンテナ化とサービスベースのアーキテクチャでは、時間がかかり、エラーが生じやすいプロセスである状態管理にエンジニアが関わる必要があるとも言える。このプロセスでは、ソフトウェア開発の焦点はビジネスロジックから不安定な内部の仕組みに移る。

 「アプリケーションの一貫性を確保するため、開発者はデータベーストランザクションを利用してきた。これはスケーラブルなクラウドアプリケーションでは選択肢になり得ない。まとまりのあるアプリケーションエクスペリエンスに見せかけるために、キュー、データベース、cronジョブなどのインフラを大まかに組み立てることを余儀なくされている」(ファテエフ氏)

 Temporalはステートフルなアプリケーションに一貫性のあるバックエンドを提供し、言語、ツールスタック、デプロイ環境を選んで使えるようにする。

Netflixの選択

 Netflixは次世代CI/CDプラットフォームの基盤にTemporalを選択した。Temporalが開発ワークフロー内部でロジックを作成するため、アプリケーションの一貫性確保や障害からの保護を目的とするロジックの作成時間が短縮されている。

 Netflixのロブ・ツィエナート氏(シニアソフトウェアエンジニア)は言う。「Netflixは次世代CI/CDプラットフォームの開発に際し、不可欠なコアコンポーネントとしてTemporalを使っている。当社はこのプラットフォームを世界中のクラウドプロバイダーへの高速かつ安全で信頼性の高いソフトウェアデリバリーに活用している」

Temporalの存在意義

 クラウドアプリケーション構築の複雑さにより、状態管理機能は管理以前の様相を呈していることは驚くに当たらない。複数のデータフローが関連するアプリケーションの入力に存在するタスク間の依存関係の管理、スケジューリング、同時実行ロジックの役割と要件は、ポイント・アンド・クリックで解決できる問題でないことは分かっている。そこに、Temporalの存在意義がある。

Amazon SWFとは

 AWSは、Amazon SWFによって分散コンポーネント間でタスクを調整するアプリケーションの構築が容易になるとしている。「Amazon SWFでは、アプリケーションのコンポーネントが実行する作業の論理的な単位をタスクと呼ぶ。アプリケーション全体のタスクを調整するには、アプリケーションの論理的な流れに従ってタスク間の依存関係、スケジューリング、同時実行性を管理する必要がある」

 Amazon SWFを利用すれば、タスクの進行状況の追跡やタスクの状態管理といった複雑さについて懸念することなく、タスクの実装と調整を制御できる。

ITmedia マーケティング新着記事

news047.png

【Googleが公式見解を発表】中古ドメインを絶対に使ってはいけない理由とは?
Googleが中古ドメインの不正利用を禁止を公式に発表しました。その理由や今後の対応につ...

news115.jpg

「TikTok禁止法案」に米大統領が署名 気になるこれからにまつわる5つの疑問
米連邦上院が、安全保障上の理由からTikTokの米国事業の売却を要求する法案を可決し、バ...

news077.jpg

「気候危機」に対する理解 日本は米国の3分の1
SDGsプロジェクトはTBWA HAKUHODOのマーケティング戦略組織である65dB TOKYOと共同で、「...