ADOBE
FLASH
MEDIA
SERVER
とづいて提供されるものであり、当該エンドユーザ使用許諾契約の契約条件に従ってのみ使用または複製することが可能となるものです。当該エンドユーザ使用許諾契約により許可
されている場合を除き、本マニュアルのいかなる部分といえども、Adobe Systems Incorporated(アドビシステムズ社)の書面による事前の許可なしに、電子的、機械的、録音、
その他いかなる形式・手段であれ、複製、検索システムへの保存、または伝送を行うことはできません。本マニュアルの内容は、エンドユーザ使用許諾契約を含むソフトウェアと共 に提供されていない場合であっても、著作権法により保護されていることにご留意ください。 本マニュアルに記載される内容は、あくまでも参照用としてのみ使用されること、また、なんら予告なしに変更されることを条件として、提供されるものであり、従って、当該情報 が、アドビシステムズ社による確約として解釈されてはなりません。アドビシステムズ社は、本マニュアルにおけるいかなる誤りまたは不正確な記述に対しても、いかなる義務や 責任を負うものではありません。 新しいアートワークを創作するためにテンプレートとして取り込もうとする既存のアートワークまたは画像は、著作権法により保護されている可能性のあるものであることをご留意 ください。保護されているアートワークまたは画像を新しいアートワークに許可なく取り込んだ場合、著作権者の権利を侵害することがあります。従って、著作権者から必要なすべ ての許可を必ず取得してください。 例として使用されている会社名は、実在の会社・組織を示すものではありません。
Adobe、Adobe ロゴ、Adobe AIR、Adobe Premiere、Acrobat Connect、ActionScript、After Effects、ColdFusion、Flash、Flash Lite および Flex は、アドビシステムズ社
の米国ならびにその他の国における登録商標または商標です。All other trademarks are the property of their respective owners.
Portions include software under the following terms:
Sorenson™ Spark™ ビデオ圧縮および圧縮解除テクノロジーは、Sorenson Media, Inc. のライセンス供与によって提供されます。
Licensee shall not use the MP3 compressed audio within the Software for real time broadcasting (terrestrial, satellite, cable or other media), or broadcasting via Internet or other networks, such as but not limited to intranets, etc., or in pay-audio or audio on demand applications to any non-PC device (i.e., mobile phones or set-top boxes). Licensee acknowledges that use of the Software for non-PC devices, as described herein, may require the payment of licensing royalties or other amounts to third parties who may hold intellectual property rights related to the MP3 technology and that Adobe has not paid any royalties or other amounts on account of third party intellectual property rights for such use. If Licensee requires an MP3 decoder for such non-PC use, Licensee is responsible for obtaining the necessary MP3 technology license. Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA.
Notice to U.S. Government End Users. The Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101, consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable.Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein.Unpublished-rights reserved under the copyright laws of the United States.Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA.For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.
目次
第 1 章:はじめに サーバーのエディション . . . 1 必要システム構成 . . . 3 新機能 . . . 3 サーバーの一般的な使用法 . . . 6 第 2 章:アーキテクチャ コアサーバーアーキテクチャ . . . 10 言語ライブラリ . . . 14 サーバーの規模の調整 . . . 17 サーバーの設定と管理 . . . 18 第 3 章:セキュリティ コンテンツのセキュアなストリーミング . . . 20 コンテンツの保護 . . . 21 サーバーのセキュアな設定 . . . 22 サーバーサイドスクリプトのセキュリティ . . . 22 セキュアなアプリケーションシナリオ . . . 23第
1
章:はじめに
Adobe® Flash® Media Server
は、ビデオオンデマンド、ライブビデオ、ストリーミングミュージック、ビデオのブログ、 ビデオメッセージング、マルチメディアチャット環境、リアルタイムデータキャストおよびマルチユーザーのゲームを 提供できるリアルタイムメディアサーバーです。Flash Media Server
クライアントアプリケーションはAdobe Flash
Player
、Adobe AIR
およびAdobe Flash Lite
で実行され、複数のプラットフォームとブラウザで一貫して動作します。Flash Media Server 3
には、Adobe Flash Media Streaming Server
、Adobe Flash Media Interactive Server
およびAdobe Flash Media Development Server
という3
つのエディションがあります。サーバーのエディション
Flash Media Streaming Server
Flash Media Streaming Server
は、Flash Player
、AIR
およびFlash Lite
向けの強力でセキュアなビデオおよびオー ディオのストリーミングソリューションです。これは、Flash Player
にライブビデオとビデオオンデマンドを配信するた めのサーバーです。このサーバーには、ライブのコンテンツまたは記録されたコンテンツをクライアントに配信できる、 ライブとビデオオンデマンド(VOD
)の2
つのビルトインストリーミングサービスが含まれています。Flash Media
Streaming Server
には、ライブサービスとVOD
サービスを使用するFlash Player
、AIR
またはFlash Lite
のソリュー ションを開発できるクライアントAPI
が用意されています。このサーバーエディションは、パフォーマンスやスケーラ ビリティの高い、またはカスタムのビデオソリューションを対象としていません。Flash Media Streaming Server
は、ライブストリーミングメディアとビデオオンデマンドストリーミングメディアの2
種類のストリーミングサービスを提供します。これらのサービスを使用するクライアントを作成し、クライアント数を 限定せずにライブビデオをストリーミングすることができます。ライブストリームは、短いイベントのように時間で区切 ることも、テレビ局やラジオ局のように常にオンにすることもできます。記録されたビデオには、短いコマーシャル、映 画の予告編、ミュージックビデオからテレビ番組やノーカットの映画まで、様々な種類があります。Flash Media Interactive Server
Flash Media Interactive Server
は、Flash Player
、AIR
およびFlash Lite
に向けて、ビデオレコーダやマルチプレー ヤーゲームなどのストリーミングメディアおよびソーシャルメディアアプリケーションを配信するための、強力でセキュ アな、拡張性とスケーラビリティに富むソリューションです。このサーバーには、サーバーサイドActionScript
とクラ イアントサイドActionScript
でメディアアプリケーションを開発するためのSDK
が用意されています。また、サーバー のビルトイン機能を拡張するプラグインをC++
で開発することができます。Flash Media Interactive Server
は、接続と 帯域幅を管理し、クライアントのより近くでコンテンツをキャッシュするエッジサーバーとして動作するように設定する こともできるため、デプロイメントの規模を簡単に調整できます。Flash Media Interactive Server
はFlash Media Streaming Server
と同じストリーミングサービスを提供します。さら に、Flash Media Interactive Server
を使用すると、サーバーサイドとクライアントサイドのActionScript
を使用して新 しいビデオサービスやソーシャルメディアアプリケーションを開発することができます。これらのソーシャルメディアア プリケーションはビデオのブログおよびメッセージングや個人のビデオブロードキャストサイトなど、ユーザーが生成す るオーディオおよびビデオをストリーミングします。このエディションのサーバーは、多くのユーザーがリアルタイムで チャットやコラボレーションを行うリアルタイムメディアアプリケーションも対象にして設計されています。Flash
また、
Flash Media Interactive Server
は、オンラインゲームなどで規模の大きなユーザーのグループに対してデータを ブロードキャストできるようにも設計されています。このサーバーを使用すると、ライブビデオを備えたインタラクティ ブアプリケーションや、Adobe® Acrobat® Connect
のようなコラボレーションアプリケーションを作成することもでき ます。Flash Media Development Server
Flash Media Development Server
はFlash Media Interactive Server
の無料バージョンで制限がありますが、Flash
Media Interactive Server
用の新しいアプリケーションを開発したり、データ量の少ない基本的なストリーミングやソー シャルメディアのソリューションを本番環境に実装したりするために使用できます。本番環境でこのサーバーを使用する と、新しいマルチポイントパブリッシュ機能を利用できます。この機能では、ネットワーク上にライブパブリッシュポイ ントを作成し、ストリームにデータメッセージを組み込み、ストリームをコンテンツ配信ネットワークにプッシュ送信す ることができます。Flash Media Development Server
に機能面の制限はありませんが、同時接続数が10
に制限されて います。サーバーのエディションの比較
次の表では、各サーバーエディションの機能を比較しています(すべてのサーバーエディションがサポートしている機能 は記載されていません)。
機能 Flash Media Interactive
Server
Flash Media Streaming Server
Flash Media Development Server クライアントとサーバー間の同時接続数 無制限 無制限 10 帯域幅 無制限 無制限 無制限 プロセッサの制限 8 ウェイ SMP 4 ウェイ SMP 8 ウェイ SMP ストリーミングサービス(ライブおよび VOD) あり あり あり 複数のアプリケーションとパブリッシュポイ ント 無制限 無制限(このサーバーエディ ションで実行されるのは VOD アプリケーションとライブアプ リケーションのみです) 無制限 サーバー上でのビデオアーカイブ(記録) あり なし あり サーバーサイドプログラミング あり なし あり マルチポイントパブリッシュ あり なし あり エッジサーバーの設定 あり なし あり カスタムの C++ プラグインのサポート あり なし あり コアサーバープロセス 無制限 1 無制限 暗号化されたストリーミング(RTMP) あり あり あり 簡単なアクセスコントロール(SWF の検証) あり あり あり
必要システム構成
最新の必要システム構成については、www.adobe.com/go/learn_fms_sysreqs_jp
を参照してください。新機能
ビルトインストリーミングサービス
ビデオオンデマンドサービス ビデオをRootInstall/applications/vod/media
フォルダに置くと、ただちにビデオをストリーミングできます。コードを記述しないでビデオを
Flash Player 8
およびFlash Player 9
にストリーミングするには、Adobe Flash CS3
Professional
とFlash 8 FLVPlayback
コンポーネントをVOD
サービスと共に使用します。VOD
サービス用の独自のク ライアントアプリケーションを、ActionScript 2.0
またはActionScript 3.0
で記述することもできます。アプリケーショ ンは、ユーザーに提供するために、サーバー上で何度でも名前を変更して複製することができます。詳細については、 『Adobe Flash Media Server
開発者ガイド』の「VOD
サービス」を参照してください。ライブパブリッシュポイント
コードを記述しないで
Flash Player 8
とFlash Player 9
に向けたライブビデオのキャプチャとストリーミングを行うに は、Adobe® Flash® Media Encoder
とライブサービスを使用します。ライブサービス用の独自のクライアントアプリ ケーションを、ActionScript 2.0
またはActionScript 3.0
で記述することもできます。複数のパブリッシュポイントを作 成するには、サーバー上で何度でもアプリケーションの名前を変更して複製することができます。詳細については、 『Adobe Flash Media Server
開発者ガイド』の「ライブサービス」を参照してください。ライブパブリッシュの強化
データキーフレーム
パブリッシュする側はメタデータをライブストリームにエンコードできます。すべての受信者はライブストリームをサブ スクライブするときにメタデータを受信します。これにより、遅れて参加したユーザーにもビデオやイベントに関する重 要な情報が渡るようにしています。詳細については、『
Adobe Flash Media Server
開発者ガイド』の「ライブストリーム へのメタデータの追加」を参照してください。マルチポイントパブリッシュ
ユーザーにストリームを配信する別のオリジンサーバーにライブストリームをプッシュ送信するには、
Flash Media
Interactive Server
またはFlash Media Development Server
を使用します。これは、何百万ものユーザーにストリーム を配信できるコンテンツ配信ネットワークにデータをストリーミングする場合に便利です。詳細については、『Adobe
Flash Media Server
開発者ガイド』の「サーバーからサーバーへのパブリッシュ」を参照してください。セキュリティ機能の強化
暗号化された
RTMP
(RTMPE
)RTMP
(Real-Time Messaging Protocol
)の128
ビット暗号化バージョンです。このプロトコルはSSL
より軽量です が、高レベルのセキュリティを提供します。詳細については、「RTMP
(Real-Time Messaging Protocol
)」を参照して ください。SWF
ファイルの検証SWF
ファイルがサーバーリソースに接続する前に、それらが信頼できることを確認します。これにより、アプリケー ションまたはサービスに接続するクライアントは、作成したクライアントまたは許可したクライアントだけであることが 保証されます。詳細については、『Adobe Flash Media Server
設定および管理ガイド』の22
ページの「SWF
ファイル の検証」を参照してください。ストリームデータへのアクセス
読み取りと書き込みの
ACL
(アクセスコントロールリスト)が拡張され、ストリーム内のオーディオとビデオのデータ へのアクセスを制御する新しい権限が2
種類追加されました。アプリケーションは、サーバーに許可された場合、ビデオ フレームをビットマップとして抽出できます。サーバーサイドActionScript API
とAuthorization
プラグインAPI
がこ の機能をサポートするように更新されました。詳細については、『Adobe Flash Media Server
開発者ガイド』を参照して ください。パフォーマンスの向上
公開されたパフォーマンスベンチマーク 負荷テストの統計がhttp://www.adobe.com/go/fms_jp
で公開されています。統計は入念なテストによって得られたも のであり、ランダムな接続やストリーミングのパターンを含め、実世界のシナリオが反映されています。 インテリジェントな一時停止Flash Player 9 Update 3
では、ストリームが一時停止されたときにバッファが消去されなくなりました。これにより、視 聴者が間を空けずに再生を再開できるようになりました。また、開発者は、コードにNetStream.pause()を使用して、 視聴者がコマーシャルを見ている間などにデータをバッファに格納することができます。これにより視聴者は、例えばメ インのビデオが開始されたときにストリームの一時停止を解除することができます。詳細については、『Adobe Flash
Media Server ActionScript 2.0 Language Reference
』または『ActionScript 3.0
コンポーネントリファレンスガイド』 の「NetStream.pause()」の項目を参照してください。複数のプロセスにわたるアプリケーションの分散
注意
:
この機能はFlash Media Interactive Server
とFlash Media Development Server
でのみ使用できます。 アプリケーションインスタンスがサーバープロセスに割り当てられるスコープを指定し、それらのインスタンスを分散さ せる対象となるサーバープロセスの数を選択します。指定できるスコープには、アダプタ、仮想ホスト、アプリケーショ ン、インスタンスおよび接続が含まれます。プロセスの分散を微調整する機能によって、様々な種類のアプリケーション のサーバーで最大限のパフォーマンスを実現することができます。詳細については、『Adobe Flash Media Server
設定お よび管理ガイド』の19
ページの「アプリケーションをサーバープロセスに割り当てる方法の設定」を参照してください。接続要求の制限
サーバーのパフォーマンスを維持するには、外部からの接続が急増した場合に制限を加えるようにサーバーを設定しま す。これにより、アクセスが集中する新しいニュース記事などの大きなイベントが突然発生した場合に、既に接続されて いるユーザーによるビデオの再生が中断されないようにします。詳細については、『
Adobe Flash Media Server
設定およ び管理ガイド』の16
ページの「接続要求の制限」を参照してください。アイドル状態の接続の切断
アイドル状態が長く続いている接続を切断してコアプロセスを解放するようサーバーを設定して、追加のアプリケーショ ンを実行できるようにします。詳細については、『
Adobe Flash Media Server
設定および管理ガイド』の17
ページの 「アイドル状態の接続の終了」を参照してください。ネイティブな帯域幅検出機能
サーバーからクライアントへの帯域幅の検出は、サーバーサイド
ActionScript
スクリプト内ではなく、ネイティブの サーバーコードで行われるようになりました。この検出方法では、メモリとCPU
の使用率が低下するので、パフォーマ ンスとスケーラビリティが向上します。さらに帯域幅は、クライアントとオリジンサーバーの間ではなく、エッジサー バーとクライアントの間で測定されるようになりました。これは、クライアントが接続するのはエッジサーバー経由であ るためです。詳細については、『Adobe Flash Media Server
設定および管理ガイド』の32
ページの「ネイティブな帯域 幅検出の設定または無効化」を参照してください。 記録済みメディアのキャッシュに最適なメモリ使用の設定 記録済みメディアのキャッシュが使用するメモリ量に制限を設定します。最も多く要求されるデータセグメントがキャッ シュ内に保持される確率を高める、新しい置き換えポリシーも採用されています。詳細については、『Adobe Flash
Media Server
設定および管理ガイド』の14
ページの「記録済みメディアのキャッシュの設定」を参照してください。プラグインのサポート
File
プラグイン注意
:
この機能はFlash Media Interactive Server
とFlash Media Development Server
でのみ使用できます。File
プラグインC++ API
を使用すると、サーバーがファイルアクセスを処理する方法をカスタマイズできます。例えば、 ビデオをストリーミングするために必要なバイトにアクセスするHTTP
要求を発行する、リモートコンテンツの管理ソ リューションを作成できます。詳細については、「プラグインAPI
」を参照してください。Authorization
プラグイン注意
:
この機能はFlash Media Interactive Server
とFlash Media Development Server
でのみ使用できます。Authorization
プラグインC++ API
を使用すると、サーバーイベントにアクセスできます。また、ファイルの再生や シークなどの特定のイベントを許可したり不許可にしたりすることができます。クライアントを切断し、任意のメッセー ジをサーバーサイドスクリプトに送信することもできます。これにより、他のプラグインと、Authorization
プラグイン を拡張可能にするサーバーサイドActionScript API
の間が緊密に結び付けられています。詳細については、 「プラグインAPI
」を参照してください。Access
プラグイン注意
:
この機能はFlash Media Interactive Server
とFlash Media Development Server
でのみ使用できます。Access
プラグインC++ API
を使用すると、サーバーへのアクセスを制御できます。Access
プラグインによって、セ キュリティの層がもう1
つサーバーに追加されます。この層では接続要求をインターセプトし、要求がサーバーのスクリ プト層に到達する前にクライアントとサーバーを検査して、要求の受諾、拒否またはリダイレクトのいずれの処理を行う かを決定します。詳細については、「プラグインAPI
」を参照してください。管理ツール
FMSCheck
ツール 詳細なチェックを行い、ストリーミングが正常に機能しているかどうかを確認します。例えば、ストリームの再生が可能 か、ストリームのパブリッシュが可能か、アプリケーションレベルの接続が受諾されているかなどを確認できます。詳細 については、『Adobe Flash Media Server
設定および管理ガイド』の65
ページの「サーバーステータスの確認」を参照 してください。FLVCheck
ツールアドビシステムズ社以外のサードパーティのテクノロジでエンコードされたファイルを、サーバーでエラーなしにスト リーミングできることを確認します。詳細については、『
Adobe Flash Media Server
設定および管理ガイド』の67
ペー ジの「ビデオファイルの確認」を参照してください。 設定の簡略化 最もよく使用される設定パラメータがXML
ファイルからfms.ini
ファイルに移動されました。これにより、1
つの 場所からサーバーを設定できます。詳細については、「サーバーの設定」を参照してください。プラットフォームと標準への準拠
H.264
ビデオとHE-AAC
オーディオのサポートFlash Player 9 Update 3
とAIR
は、MPEG-4
標準ファイル形式で定義されているH.264
およびHE-AAC
でエンコー ドされたビデオとオーディオをサポートしています。これらの形式は、より低いビットレートで高品質のビデオをスト リーミングします。開発者は、Adobe Premiere Pro
やAdobe After Effects
を含む業界標準のツールを利用して、魅力 的なビデオコンテンツを作成し、配信することができます。すべてのエディションのFlash Media Server 3
で、H.264
と
HE-AAC
のコンテンツをFlash Player 9 Update 3
とAIR
にストリーミングできます。詳細については、「ストリーミングメディア」を参照してください。
302
リダイレクト接続注意
:
この機能はFlash Media Interactive Server
とFlash Media Development Server
でのみ使用できます。リダイレクト情報を標準形式で伝達するように、NetConnection.Connect.Rejectステータスコードが拡張されました。
Access
プラグインAPI
、Authorization
プラグインAPI
およびサーバーサイドActionScript API
が、リダイレクトをサ ポートするように更新されました。詳細については、『Adobe Flash Media Interactive Server Plug-in API Reference
』 と『Server-Side ActionScript Language Reference
』を参照してください。AMF3
のサポートすべてのサーバーエディションが、
Flash Player 9
およびActionScript 3.0
で導入されたデータのシリアライズについてAction Message Format
(AMF
)3
をサポートしています。詳細については、『Adobe Flash Media Server
開発者ガイ ド』の「Action Message Format
(AMF
)について」を参照してください。IPv6
への準拠すべてのエディションの
Flash Media Server 3
はIPv6
標準に準拠しています。これは、インターネットプロトコルのア ドレス指定機能を拡張する次世代の標準です。詳細については、『Adobe Flash Media Server
設定および管理ガイド』の30
ページの「IPv6
の設定」を参照してください。サーバーの一般的な使用法
ビデオプレーヤー
ビデオプレーヤーは、
Flash Media Server
からユーザーに対し、ライブビデオまたは記録されたビデオのストリーミン グを行います。記録されたビデオはビデオオンデマンドと呼ばれます。キャプチャされてライブでストリーミングされる ビデオは、ライブビデオと呼ばれます。記録されたビデオをオンデマンドで配信するために、FLVPlayback
コンポーネ ントというビデオプレーヤーが用意されており、ActionScript
を使用すると、独自のクライアントビデオプレーヤーを開発することもできます。
Adobe Flash Media Encoder
では、オーディオとビデオをFlash Media Server
にストリーミ ングするのと同時にキャプチャできます。ActionScript
を使用して、オーディオとビデオをキャプチャするカスタムFlash Player
アプリケーションを構築することもできます。 以下に、ストリーミングできるコンテンツの種類の例を示します。•
コマーシャルなど、30
秒までの短いビデオクリップ•
ユーザーが作成したビデオなど、最大30
分までの長いクリップ(一般に「ロングテール」コンテンツと呼ばれます)•
録画されたテレビ番組や映画など、数時間までの非常に長いクリップ•
ビデオ再生リストでは、ストリームの種類がライブストリーム、記録されたストリームまたはそれらの組み合わせの どれであっても、リストにあるストリームを順番に再生できます。再生リストはクライアントサイドスクリプトでも、Flash Media Interactive Server
上のサーバーサイドスクリプトでも作成できます。A. Flash Media Encoder(またはカスタム構築された Flash Player や AIR ソリューション)は、ライブのオーディオやビデオをキャプチャして、
サーバーにパブリッシュします。B. Flash Media Server はライブメディアおよび記録済みメディアをクライアントにストリーミングします。C. イ
ンターネット(RTMP)D.Flash Player、AIR または Flash Lite でビデオプレーヤーが実行されます。
広告付きビデオ
ストリーミングビデオアプリケーションは、録画されたテレビ番組やライブビデオの前に再生される短いコマーシャルな ど、様々なポイントに広告を挿入できます。多くの場合、1
つのサーバーから広告がストリーミングされ、別のサーバー またはコンテンツ配信ネットワークからコンテンツがストリーミングされます。広告付きビデオのアプリケーションは通 常、広告サーバーに接続し、広告をストリーミングしてから広告サーバーとの接続を閉じます。次にコンテンツサーバー に接続し、コンテンツをストリーミングしてからその接続を閉じます。ビデオがストリーミングされるたびにこの処理の 流れを繰り返します。A. ライブビデオB. Flash Media Server(記録されたコンテンツおよびライブコンテンツを提供)C. Flash Player、AIR または Flash Lite
クライアントD.Flash Media Server(広告を提供)
B D A C RTMP D B C A
マルチポイントパブリッシュを使用するライブビデオ
注意
:
この機能はFlash Media Interactive Server
とFlash Media Development Server
でサポートされます。 ライブオーディオとライブビデオは、PC
カメラでキャプチャされたものでも、高度な機能を使用した企業のビデオ撮影 グループによってキャプチャされたものでも、http://www.adobe.com/go/learn_fms_fme_jp
から入手できるAdobe
Flash Media Encoder
を使用して、ビデオやストリーミングされるライブに変換することができます。注意
:
独自のFlash Player
ソリューションまたはAIR
ソリューションを作成し、ライブビデオのキャプチャとストリー ミングを行うこともできます。多くの視聴者にメディアをブロードキャストする必要がある場合、ライブビデオを、マルチポイントパブリッシュを使用 してカメラからパブリッシュサーバーにストリーミングしてから、ブロードキャストサーバー(コンテンツ配信ネット ワークである場合も多い)にストリーミングすることができます。
A. ライブビデオB. Flash Media Encorder(またはカスタム構築された Flash Player または AIR ソリューション)C.Flash Media Server(パブリッ
シュ) D. Flash Media Server(ブロードキャスト)E.Flash Player、AIR または Flash Lite クライアント
マルチポイントパブリッシュを使用すると、大規模なライブビデオアプリケーションを構築したり、ライブストリームに メタデータを組み込んだりすることができます。例えば、インターネットテレビ局を作成し、
Flash Media
Development Server
にストリームをパブリッシュできます。このサーバーでは、何百万ものユーザーにストリームを プッシュ配信できるCDN
などのより大規模なFlash Media Interactive Server
デプロイメントに、ストリームをパブ リッシュします。D
C E
ソーシャルメディアアプリケーション
Flash Media Interactive Server
アプリケーションは、ビデオ共有、オンラインチャット、Web
会議およびその他のコ ミュニティ構築機能を通じて、ユーザーを引きつけることができます。ユーザーは、テキストメッセージはもちろんオー ディオやビデオもサーバーに送信することができます。サーバーはそれらのデータを、接続されているすべてのユーザー にストリーミングします。サーバーは、ビデオメッセージングアプリケーション使用時のように、後で再生するためにメ ディアを記録することもできます。A.クライアントはオーディオ、ビデオおよびテキストメッセージを送受信できます。B. Flash Media Interactive Server は接続しているすべての
ユーザーにメディアとデータをブロードキャストします。 B A A A A A
第
2
章:アーキテクチャ
コアサーバーアーキテクチャ
クライアントサーバーアーキテクチャ
Adobe Flash Media Server
アプリケーションはクライアントサーバーアーキテクチャを採用しています。クライアント コードはActionScript
で記述され、Adobe Flash Player
、Adobe AIR
またはAdobe Flash Lite
で実行されます。サー バーコードはサーバーサイドActionScript
で記述されます。これは、ActionScript 1.0
に類似しています。サーバーとクライアントは永続的な接続を介して、
RTMP
(Real-Time Messaging Protocol
)を使用して通信します。RTMP
は、ストリーミングとデータサービスのための、信頼性が高いTCP/IP
プロトコルです。一般的には、Web
サー バーがHTTP
経由でクライアントを配信します。クライアントはRTMP
を使用してFlash Media Server
へのソケット 接続を作成します。この接続によって、クライアントとサーバーの間でリアルタイムにデータをストリーミングできます。Flash Media Server アプリケーションは、連携して動作するクライアントコンポーネントとサーバーコンポーネントから構成されます。 A. Web サーバーB. Web サーバーが SWF ファイルを送信します。C. Flash Player、AIR または Flash Lite クライアントが SWF ファイルを再生 します。D. SWF ファイルが Flash Media Server 上のアプリケーションに接続します。サーバーは、永続的な接続を介してデータをストリーミング します。E. Flash Media Server
リアルタイムメディアサーバー
Flash Media Streaming Server
は、ライブとビデオオンデマンド(VOD
)の2
種類のストリーミングサービスを提供し ます。ストリーミングサービスは、構築済みのサーバーサイドアプリケーションです。各ストリーミングサービスには、 開発者が独自のクライアントを記述するために使用できるクライアントSDK
だけでなく、構築済みのサンプルクライア ントが用意されています。リアルタイムコラボレーションアプリケーションサーバー
Flash Media Interactive Server
とFlash Media Development Server
には、Flash Media Streaming Server
と同じス トリーミングサービスが含まれています。さらに、開発者がクライアントサイドとサーバーサイドの両方のメディアアプ リケーションのコンポーネントを記述し、双方向のインタラクティブアプリケーションを作成できるSDK
が提供されて います。Flash Media Interactive Server
とFlash Media Development Server
には、開発者がサーバーのコア機能を拡 張するプラグインをC++
で記述することができるSDK
も付属しています。 HTTP RTMP C E A B D複数のアプリケーションとアプリケーションインスタンスのホスティング
Flash Media Interactive Server
とFlash Media Development Server
がホスティングできるアプリケーションの数と、 各アプリケーションのインスタンスの数に制限はありません。Flash Media Streaming Server
がホスティングできるラ イブサービスとVOD
サービスのインスタンスの数に制限はありません。注意
: Flash Media Streaming Server
では、実行するアプリケーションはアドビシステムズ社が提供するものに制限されています。
例えば、
Flash Media Interactive Server
は、ライブサービスとVOD
サービスに加えて、Web
会議アプリケーション、 ビデオブログアプリケーション、ビデオチャットアプリケーションおよびマルチプレーヤーゲームをホスティングするこ とができます。それらのアプリケーションそれぞれについて、複数のインスタンスを作成できます。例えば、トピックご とに部屋を設けるビデオチャットアプリケーションでは、グループ同士はやり取りせず、ユーザーのグループが同じアプ リケーションにアクセスできるように、インスタンスを利用します。アプリケーションは
Flash Media Server
に登録する必要があります。これにより、アプリケーションが接続しようとす ると、サーバーによってアプリケーションが識別されます。アプリケーションをサーバーに登録するには、デフォルトで はルートインストールフォルダにあるメインアプリケーションフォルダ内に、開発者がアプリケーション用のフォルダを 作成します(Flash Media Server 3/applications
)。アプリケーションのインスタンスを作成するには、そのアプリケー ションのフォルダ内にサブフォルダを作成します(例、Flash Media Server
3/applications/exampleApplication/instance1
)。詳細については、『Adobe Flash Media Server
開発者ガイド』を参 照してください。サーバー管理者はアプリケーションフォルダの場所を変更できます。また、サーバーを複数のアダプタと仮想ホストに分 割することもできます。このようにすると、仮想ホストごとに専用のアプリケーションフォルダを持つことができます。 詳細については、「サーバーの設定」を参照してください。
RTMP
(
Real-Time Messaging Protocol
)
すべてのサーバーエディションは
Flash Player
、AIR
およびFlash Lite
と、RTMP
(Real-Time Messaging Protocol
) を介して通信します。RTMP
は負担が大きいストリームをリアルタイムに配信できるよう最適化されています。1
つのRTMP
接続で、任意の数のストリームのマルチプレックス接続を実行できます。各ストリームには、同期されたオー ディオ、ビデオおよびデータのチャネルが含まれます。リモートメソッドの呼び出しと共有オブジェクトメッセージは、 データ専用ストリームで伝達されます。Flash Media Server 3
でサポートされるRTMP
接続は、次の5
種類です。RTMP
これは標準の、暗号化されないRTMP
です。デフォルトのポートは1935
です。ポートが指定されていない場合、 クライアントは1935
、443
、80
(RTMP
)、80
(RTMPT
)という順序でポートへの接続を試みます。RTMPT
このプロトコルはHTTP
を介してトンネリングされたRTMP
です。RTMP
データは有効なHTTP
としてカプ セル化されます。デフォルトのポートは80
です。RTMPS
このプロトコルはSSL
を介したRTMP
です。SSL
は、TCP/IP
を介したセキュアな通信を可能にするプロトコ ルです(Flash Media Server
は、外部からと外部への両方のSSL
接続をネイティブでサポートしています)。デフォルト のポートは443
です。RTMPE
このプロトコルは、RTMP
の暗号化されたバージョンです。RTMPE
はSSL
より高速で、証明書の管理を必要 とせず、サーバーのAdaptor.xml
ファイルで有効にされます。ポートを明示的に指定しないでRTMPE
を指定すると、Flash Player
はRTMP
の場合と同様に1935
(RTMPE
)、443
(RTMPE
)、80
(RTMPE
)、80
(RTMPTE
)という 順序でポートをスキャンします。ストリーミングメディア
メディア(オーディオ、ビデオおよびデータを含む場合があります)はクライアントと
Flash Media Server
の間でリア ルタイムに送信され、到着すると表示されます。このようなデータ送信は「ストリーミング」と呼ばれます。クライアン トとFlash Media Server
の間でストリーミングされるメディアは「ストリーム」と呼ばれます。ストリームはパブリッ シュ/サブスクライブモデルを使用します。「サブスクライブ」とは再生を意味します。クライアントとサーバーのどち らでもストリームをパブリッシュできますが、ストリームを再生できるのはクライアントだけです。例えば、作成者は
Flash Media Encoder
を使用して、基調講演のライブのオーディオとビデオをキャプチャしてエン コードし、サーバーにパブリッシュできます。ユーザーはこの講演を、ストリームにサブスクライブするFlash Player
、AIR
またはFlash Lite
クライアントで見ることができます。別のシナリオでは、ソーシャルメディア
Web
サイトのユーザーは、ライブストリームをビデオチャットアプリケーショ ンでパブリッシュできます。この場合、ユーザーのPC
カメラからビデオをFlash Player
でキャプチャすることになりま す。ソーシャルメディアサイトの他のユーザーは、ストリームをライブで見ることができます。また、開発者がこの機能 を追加した場合は、記録されたストリームを後で再生することができます。注意
: Flash Media Interactive Server
とFlash Media Development Server
では、後で再生するためにライブストリー ムを記録できます。 サーバーはストリームを、クライアントまたは他のサーバーにパブリッシュできます。例えば、XML
データをサーバー サイドスクリプトに取り込んで再生リストを作成し、それをクライアントにストリームとしてパブリッシュすることもで きます。より多くのクライアントをサポートするため、あるサーバーから他のサーバーにストリームをパブリッシュし、 ライブブロードキャストアプリケーションの規模を調整することができます。 ストリームをパブリッシュするには、クライアントでNetStream.publish()を呼び出します。ストリームにサブスク ライブするには、クライアントでNetStream.play()を呼び出します(これらの呼び出しはActionScript 2.0
またはActionScript 3.0
で行うことができます)。ストリームをクライアントにパブリッシュするには、サーバーで Stream.play()を呼び出します。ストリームを別のサーバーにパブリッシュするには、サーバーで NetStream.publish()を呼び出します(これらの呼び出しはサーバーサイドActionScript
で行います)。注意
: Flash Media Encoder 2
がパブリッシュする側である場合、コードを記述する必要はありません。Flash Media
Encoder 2
はデフォルトで、ライブストリームをFlash Media Server 3
にパブリッシュするよう設定されています。サポートするコーデック
Flash Media Server
は、オーディオとビデオの情報のエンコードやデコードを行いません。このサーバーは、既にエン コードされているメディアをストリーミングします。キャプチャ済みのメディア(つまりライブでないメディア)をエン コードしてストリーミングするには、対象となるバージョンのFlash Player
またはAIR
がサポートするコーデックを使 用します。ライブビデオのキャプチャ、エンコードおよびストリーミングを行う場合は、
Flash Media Encoder 2
を使用するか、ActionScript
を使用して独自のFlash Player
またはAIR
クライアントを構築することができます。Flash Media Encoder
2
はOn2 VP6
コーデックでライブビデオをエンコードします。Flash Player
とAIR
は、Sorenson Spark
コーデックを使 用してライブビデオをエンコードし、独自仕様のNellymoser
のコーデックを使用してライブオーディオをエンコードし ます。On2 VP6
でライブビデオをエンコードする場合は、Flash Media Encoder 2
を使用する必要があります。 次の表に、サポートするコーデックと、必要とされる最も古いSWF
ファイル形式およびFlash Player
のバージョンを示 します。 コーデック SWF ファイル形式のバージョン(サポー トされる最も古いパブリッシュバージョン) Flash Player のバージョン(再生に必要 な最も古いバージョン)Sorenson Spark 6 6、Flash Lite 3 On2 VP6 6 8、Flash Lite 3 H.264(MPEG-4 Part 10) 9 9 Update 3、AIR ADPCM 6 6、Flash Lite 3
注意
: AIR
は、Flash Player 9 Update 3
以降を含む、クロスオペレーティングシステムランタイムです。Flash Player
とAIR
がアルファチャネルをサポートするのはOn2 VP6
の使用時のみです。Flash Player 9 Update 3
とAIR
は、次のMPEG-4
標準のサブセットの再生をサポートしています。サポートするファイル形式
すべてのエディションの
Flash Media Server 3
が次のファイル形式の再生をサポートしています。FLV
すべてのバージョンのFlash Media Server
(1
、2
および3
)がFLV
ファイル形式をサポートしています。FLV
ファイル形式は、
On2 VP6
、Sorenson Spark
およびMP3
のコーデックをサポートしています。既存のデジタルビデオファイルまたはオーディオファイルから
FLV
ファイルを作成するには、On2
やSorenson
Squeeze
のようなサードパーティのビデオエンコードユーティリティを使用するか、Flash
から書き出します。記録され るストリームには、ビデオとオーディオだけでなくデータメッセージも含めることができます。このストリームはFLV
ファイル形式で保存されます。
F4V
、MP4
、M4A
、MOV
、MP4V
、3GP
および3G2
Flash Media Server 3
は、MPEG-4 Part 14
のコンテナ形式に格 納されているH.264
でエンコードされたビデオとAAC
でエンコードされたオーディオの再生をサポートしています。Adobe Premiere
やAdobe AfterEffects
を含め、必要な数の業界標準ツールを使用して、このようなエンコードを採用 した形式でファイルを作成できます。重要
:
ファイル内に、H.264
とAAC
でエンコードされていないオーディオやビデオの一部が含まれている場合、スト リームのそれらの部分は再生されません。H.264
とAAC
のサポートの詳細については、「Exploring Flash Player
support for high-definition H.264 video and AAC audio
」を参照してください。データモデル
Flash Media Server
アプリケーションは、簡単であっても強力な、共有オブジェクトに基づく分散データモデルを使用 します。クライアントサイドActionScript
とサーバーサイドActionScript
のどちらにもSharedObject
クラスがあり、 開発者はこのクラスを使用して、サーバーに接続されたクライアント間でデータを共有することができます。共有オブジェクトには、ローカルとリモートの
2
つの種類があります。ローカル共有オブジェクトはクライアントコン ピュータに格納され、リモート共有オブジェクトはサーバーに格納されます。ローカルとリモートのどちらの共有オブ ジェクトも、一時的または永続的のいずれかにすることができます。ローカル共有オブジェクトは
cookie
に似ており、オフラインアクセスやユーザー設定を保存するために、ユーザーのコ ンピュータにデータを保存します。ローカル共有オブジェクトはFlash Player
の機能であり、その動作にFlash Media
Server
は必要ありません。MP3 6 6、Flash Lite 3 AAC(MPEG-4 Part 3) 9 9 Update 3、AIR
MPEG-4 標準 Flash Player 9 Update 3/AIR のサポート
ISO/IEC 14496-3(Audio AAC) AAC Main、AAC LC、SBR
ISO/IEC 14496-10(Video AVC) Base(BP)、Main(MP)、High(HiP)。すべてのレベルが サポートされます。
ISO/IEC 14496-12(コンテナ) オーディオトラック 1 つ、ビデオトラック 1 つ
3GPP TS 26.245(Timed Text Format) フルにサポートされます。
コーデック SWF ファイル形式のバージョン(サポー
トされる最も古いパブリッシュバージョン)
Flash Player のバージョン(再生に必要 な最も古いバージョン)
リモート共有オブジェクトは、サーバーによって管理と格納が行われます。開発者は、メッセージング、データ同期およ びデータの格納のためにリモート共有オブジェクトを使用できます。クライアントはリモート共有オブジェクトに接続 し、共有オブジェクトに変更があった場合には更新を受け取ります。リモート共有オブジェクトに接続しているすべての クライアントにメッセージを送信できます。
注意
:
リモート共有オブジェクトはFlash Media Streaming Server
ではサポートされていません。 詳細については、『Adobe Flash Media Server
開発者ガイド』を参照してください。リモートメソッドの呼び出し
Flash Media Interactive Server
とFlash Media Development Server
は、双方向で非同期に行われるリモートメソッド の呼び出しをサポートしています。クライアントはサーバーで定義されているメソッドを呼び出すことができ、サーバー は自身に接続されているクライアントのメソッドを呼び出すことができます。クライアントサイドスクリプトでは、 NetConnection.call()メソッドを呼び出してサーバーサイドのClient
オブジェクトで定義されているメソッドを呼び 出します。サーバーサイドスクリプトでは、Client.call()メソッドを呼び出してクライアントサイドのNetConnection
オブジェクトで定義されているメソッドを呼び出します。サーバーサイドスクリプトで NetConnection.call()を呼び出して、リモートサーバーのメソッドを呼び出すことができます。詳細については、『
Server-Side ActionScript Language Reference for Adobe Flash Media Server
』、『ActionScript 2.0
Language Reference
』および『ActionScript 3.0
コンポーネントリファレンスガイド』を参照してください。外部ソースへの接続
ストリームと共有オブジェクトによって提供される通信モデルに加えて、
Flash Media Interactive Server
とFlash Media
Development Server
は、Web
サービスやリレーショナルデータベースのような外部データソースや、他のFlash Media
Server
アプリケーションとやり取りすることができます。例えば、Web
サービスに接続(WebService
クラスを使用)し たり、ColdFusion
アプリケーションに接続するサーバーサイドActionScript
を記述して、名前や電話番号のリストを取 得することができます。そして、このクエリーの結果を共有オブジェクトに入れることができます。詳細については、『
Adobe Flash Media Server
開発者ガイド』と『Server-Side ActionScript Language Reference
』を 参照してください。注意
: Flash Player
、AIR
およびFlash Lite
クライアントは、外部ソースとのやり取りに、サポートされているすべてのクライアントサイド
ActionScript API
を使用することもできます。Flash Media Server
には、この機能に関する制限は ありません。詳細については、Flash Player
、AIR
およびFlash Lite
のドキュメントを参照してください。言語ライブラリ
クライアントサイド
ActionScript API
クライアントサイドスクリプトは、
Flash Player
、AIR
またはFlash Lite
で実行されます。Adobe Flash
またはAdobe
Flex
を使用して、ActionScript 2.0
またはActionScript 3.0
でサーバーリソースにアクセスするクライアントサイドス クリプトを記述することができます。例えば、ライブのオーディオとビデオをキャプチャし、それをサーバーにストリー ミングして、そのサーバーから、接続されているすべてのクライアントにストリーミングします。開発者はクライアントサイドスクリプトで、任意の
Flash Player
クラスを使用できます。Flash Media Server
リソース にアクセスするには、次のクラスを使用します。Camera
Flash Player
またはAIR
を実行するコンピュータに接続されているカメラからビデオをキャプチャします。NetConnection
クラスとNetStream
クラスを使用して、ビデオをFlash Media Server
に送信します。Flash Media
Server
はビデオを他のサーバーに送信したり、Flash Player
、AIR
またはFlash Lite
を実行している他のクライアントに ビデオをブロードキャストしたりすることができます。Microphone
Flash Player
またはAIR
を実行するコンピュータに接続されているマイクからオーディオをキャプチャし ます。NetConnection
クラスとNetStream
クラスを使用して、オーディオをFlash Media Server
に送信します。Flash
Media Server
はオーディオを他のサーバーに送信したり、Flash Player
、AIR
またはFlash Lite
を実行している他のク ライアントにオーディオをブロードキャストしたりすることができます。NetConnection
クライアントとFlash Media Server
の間、またはFlash Media Server
とFlash Remoting
の間に開か れる双方向の接続を表します。NetStream
NetConnection
オブジェクトによって使用可能になった接続を介して、クライアントとFlash Media
Server
の間に開かれる単方向のストリームを表します。SharedObject
複数のSWF
ファイル間でデータを共有します。Flash Media Server
の複数のアプリケーションインス タンス間でもデータを共有できます。Video
SWF
ファイルにビデオを埋め込まずに、ライブビデオまたは記録されたビデオをアプリケーション内に表示しま す。Video
オブジェクトはアプリケーションの表示リストの表示オブジェクトであり、ユーザーインターフェイス内でビ デオが実行される視覚的な空間を表します。詳細については、『
ActionScript 3.0
コンポーネントリファレンスガイド』と『Adobe Flash Media Server ActionScript
2.0 Language Reference
』を参照してください。サーバーサイド
ActionScript API
Flash Media Interactive Server
とFlash Media Development Server
は、サーバーサイドActionScript
へのアクセス を提供します。サーバーサイドのコードを記述すると、ログイン過程の制御、他のサーバーへのコンテンツの再パブリッ シュ、サーバーリソースへのユーザーアクセスの許可や拒否、ユーザーによる情報の更新と共有の許可などを行うことができます。
「サーバーサイド
ActionScript
」は、JavaScript 1.5
のアドビシステムズ社での名前で、ActionScript 1.0
に似ています が、同じものではありません。どちらの言語もECMAScript Language Specification Edition 3
に基づいていますが、ActionScript 1.0
には仕様が正確に実装されていませんでした。サーバーサイドActionScript
は、Flash Media Server
に埋め込まれている
Mozilla SpiderMonkey
エンジンで実行されます。 サーバーサイドActionScript
には次のクラスがあります。Application
サーバーサイドスクリプト内でアプリケーションのインスタンスを表すSingleton
クラスです。Application
クラスのイベントハンドラを使用して、アプリケーション内のコードのフローを制御し、接続の受諾、拒否 またはリダイレクトを行います。Client
アプリケーションに接続されたクライアントを表します。サーバーはクライアントが接続するたびにClient
オブ ジェクトを作成します。このクラスは、クライアントに関する情報の取得、サーバーリソースに対する読み取りおよび書 き込みアクセスの設定およびリモートメソッドの呼び出しのために使用します。File
アプリケーションがサーバーのファイルシステムに書き込めるようにします。このクラスは、データベースを使用 しない情報の格納、デバッグで使用するログファイルの作成または使用状況の追跡のために使用します。LoadVars
このクラスは、HTTP
を介して、オブジェクト内の変数を指定のURL
に送信したり、指定したURL
にある 変数をオブジェクトに読み込んだりするために使用します。Log
このクラスは、Web
サービスの使用時にログファイルを作成するために使用します。NetConnection
Flash Media Interactive Server
(またはFlash Media Development Server
)と、アプリケーション サーバー、別のFlash Media Interactive Server
(またはFlash Media Development Server
)、または同じサーバー上に ある別のアプリケーションインスタンスとの間に、双方向の接続を作成します。NetStream
NetConnection
オブジェクトを使用して、2
つの場所にインストールされているFlash Media Server
間に 単方向のストリームを開きます。SharedObject
データをサーバーに格納し、複数のクライアントアプリケーション間でリアルタイムにデータを共有し ます。SOAPFault
WebService.onFault()やSOAPCall.onFault()に返されるエラーオブジェクトのオブジェクトタイプ です。Stream
このクラスは、ストリームの管理や再パブリッシュのために使用します。例えば、Stream
クラスを使用して サーバーサイドの再生リストを作成します。このクラスを使用すると、ストリームをサブスクライブしたクライアントに データを送信したり、ライブストリームにメタデータを追加したりすることもできます。WebService
このクラスは、WSDL/SOAP Web
サービスの作成と同Web
サービスへのアクセスのために使用します。XML
このクラスは、XML
ドキュメントツリーの読み込み、解析、送信、作成および操作を行うために使用します。XMLSocket
このクラスは、Flash Media Server
がIP
アドレスまたはドメイン名で識別される別のサーバーと通信でき るようにするクライアントソケットを実装するために使用します。XMLStreams
データを断片的に送受信するXMLSocket
クラスの一種です。詳細については、『
Server-Side ActionScript Language Reference
』を参照してください。プラグイン
API
Flash Media Interactive Server
とFlash Media Development Server
には、C++
で記述された、サーバーの機能を拡 張できるプラグインが用意されています。Access
プラグインサーバーがクライアントからの接続要求を受諾する前に、セキュリティの層を追加します。Access
プ ラグインは(要求がサーバーのスクリプト層に到達する前に)各接続要求をインターセプトして検査し、サーバーでその 要求を受諾するか拒否するかを、現在の接続数などのサーバーの統計に基づいて決定します。また、Access
プラグイン のコードを記述して、ストリームや共有オブジェクトなどのサーバーリソースに対する権限を設定することもできます。Authorization
プラグイン サーバー上で発生するイベントに対するクライアントのアクセスを許可します。Authorization
プラグインはサーバーへの接続、ストリームの再生およびストリームのパブリッシュを許可します。論理URL
の物理的な場所へのマッピングも行います。Authorization
プラグインは、Flash Media Interactive Server
クライ アント用のコンテンツの配信を、地理的な場所、サブスクリプションのレベル、Flash Media Interactive Server
スト リームの送信元、または特定のストリームにユーザーがアクセスしている時間やその長さに従って割り当てるように設定 することができます。File
プラグインファイルI/O
メカニズムとサーバーの間のインターフェイスを提供します。開発者はサーバーのデフォ ルトのオペレーティングシステムに基づくファイルシステムの代わりに、代替のファイルI/O
システムを実装できます。File
プラグインのインターフェイスは、ファイル操作の完全に非同期のモデルをサポートしているため、ネットワーク ベースのファイルI/O
を簡単に実装できます。詳細については、『