| パッケージ | net.user1.reactor |
| クラス | public class HTTPConnection |
| 継承 | HTTPConnection Connection flash.events.EventDispatcher |
| バージョン : | Reactor 1.0.0 |
HTTPConnectionクラスはReactorがUnionサーバーとHTTPを通して通信するために使用します。 通常は、開発者はHTTPConnectionクラスを直接使う必要はなく、代わりにReactorクラスのconnect()メソッドを通して接続を行うとよいでしょう。 しかしながら、HTTPConnectionクラスは異なるホストアドレスで実行中の複数のUnionサーバーに対してフェイルオーバー接続を定義するといった、適度な粒度の接続設定のために必要です(ConnectionManagerのメインクラスエントリー内の例を参照してください)。
デフォルトでは、ReactorはUnionサーバーと通信するためにHTTPConnectionクラスではなく、XMLSocketConnectionクラスを使用します。 HTTPConnectionクラスは主にメインのXMLSocketConnection接続がファイアーウォールによってブロックされるときに要求されるバックアップ接続のために使用されます。 しかしながら、使用可能な永続ソケット接続数が制限されている大容量のサーバーにおいては、HTTPを通したUnionサーバーへの接続─これは短命なソケット接続を使用します─はリアルタイム応答にかかるパフォーマンスを向上できるでしょう。 HTTP通信時のサーバー負荷を削減するには、HTTPConnectionのsetSendDelay()メソッドを使用してReactorがUnionサーバーからのアップデートを要求する頻度を減少させます。 Unionサーバーとの通信にHTTP接続をメイン形態として使用したい開発者はConnectionManagerクラスのaddConnetion()メソッドを通して手動で接続をそのように設定する必要があります。
関連項目
| メソッド | 定義元 | ||
|---|---|---|---|
HTTPConnection(host:String, port:int = 80) | HTTPConnection | ||
connect():void [オーバーライド] ドキュメントはIConnectionのconnect()メソッドを参照してください。 | HTTPConnection | ||
![]() | disconnect():void ドキュメントはIConnectionのdisconnect()メソッドを参照してください。 | Connection | |
dispose():void [オーバーライド] このオブジェクトを永久に無効化します。 | HTTPConnection | ||
![]() | getHost():String ドキュメントはIConnectionのgetHost()メソッドを参照してください。 | Connection | |
![]() | getPort():int ドキュメントはIConnectionのgetPort()メソッドを参照してください。 | Connection | |
![]() | getReadyCount():int このConnectionオブジェクトがready状態を達成した回数を示すint値を返します。 | Connection | |
getSendDelay():int この接続の送信ディレイを返します。 | HTTPConnection | ||
![]() | getType():String ドキュメントはIConnectionのgetType()メソッドを参照してください。 | Connection | |
![]() | isReady():Boolean ドキュメントはIConnectionのisReady()メソッドを参照してください。 | Connection | |
![]() | isValid():Boolean ドキュメントはIConnectionのisValid()メソッドを参照してください。 | Connection | |
send(data:*):void [オーバーライド] ドキュメントはIConnectionのsend()メソッドを参照してください。 | HTTPConnection | ||
![]() | setReactor(reactor:Reactor):void | Connection | |
setSendDelay(milliseconds:int):void 接続のバッチメッセージ送信レートを増加または減少させるか、またはバッチ送信を完全に無効化します。 | HTTPConnection | ||
setServer(host:String, port:int):void [オーバーライド] ドキュメントはIConnectionのsetServer()メソッドを参照してください。 | HTTPConnection | ||
toString():String [オーバーライド] このオブジェクトのString表現を提供します。 | HTTPConnection | ||
| Event | Summary | 定義元 | ||
|---|---|---|---|---|
![]() | IConnectionオブジェクトによる接続試行を開始するときに送出されます。 | Connection | ||
![]() | IConnectionオブジェクトがUnionサーバー接続の"ハンドシェイク"フェーズを開始するときに送出されます。 | Connection | ||
![]() | IConnectionオブジェクトのサーバーへの接続がクライアントによって切断されたときに送出されます。 | Connection | ||
![]() | IConnectionオブジェクトによる接続試行が失敗するときに送出されます。 | Connection | ||
![]() | IConnectionオブジェクトがサーバーとの接続を完全に初期化したときに送出されます。 | Connection | ||
![]() | IConnectionオブジェクトがUnionサーバーからあらゆる種類のデータを受け取ったときに送出されます。 | Connection | ||
| UPCフォーマットのメッセージをIConnectionオブジェクトから受信するときに送出されます。 | HTTPConnection | |||
![]() | IConnectionオブジェクトがUnionサーバーにあらゆる種類のデータを送信したときに送出されます。 | Connection | ||
![]() | IConnectionオブジェクトのサーバーへの接続がサーバーによって切断されたときに送出されます。 | Connection | ||
![]() | Unionサーバーがクライアントに、クライアントからのメッセージ内のセッションIDが不明なセッションを参照していることを通知するときに送出されます。 | Connection | ||
![]() | Unionサーバーがクライアントに、そのセッションが中断されたことを通知するときに送出されます。 | Connection | ||
| 定数 | 定義元 | ||
|---|---|---|---|
| DEFAULT_SEND_DELAY : int = 200 [静的] 新しいHTTPConnectionオブジェクトに使用されるデフォルトの送信ディレイです。 | HTTPConnection | ||
| HTTPConnection | () | コンストラクタ |
public function HTTPConnection(host:String, port:int = 80)host:String | |
port:int (default = 80) |
| connect | () | メソッド |
override public function connect():void| バージョン : | Reactor 1.0.0 |
ドキュメントはIConnectionのconnect()メソッドを参照してください。
関連項目
| dispose | () | メソッド |
override public function dispose():void| バージョン : | Reactor 1.0.0 |
このオブジェクトを永久に無効化します。
| getSendDelay | () | メソッド |
public function getSendDelay():int| バージョン : | Reactor 1.0.0 |
この接続の送信ディレイを返します。 詳細は、setSendDelay()を参照してください。
戻り値int |
関連項目
| send | () | メソッド |
override public function send(data:*):void| バージョン : | Reactor 1.0.0 |
ドキュメントはIConnectionのsend()メソッドを参照してください。
パラメータ
data:* |
関連項目
| setSendDelay | () | メソッド |
public function setSendDelay(milliseconds:int):void| バージョン : | Reactor 1.0.0 |
接続のバッチメッセージ送信レートを増加または減少させるか、またはバッチ送信を完全に無効化します。 ReactorのHTTPConnetionクラスはバッチメッセージ送信システムを使用し、サーバーとクライアントの負荷を削減します。 デフォルト設定では、HTTPConnectionがHTTPリクエストを通してメッセージをUnionサーバーに送信するとき、"送信カウントダウン"として知られるカウントダウンを開始します。 送信カウントダウンの時間は"送信ディレイ"として知られます(setSendDelay()メソッドを通して設定可能です)。) 送信カウントダウンが終わるか、そのHTTPリクエストへの応答を受信するまで(どちらでも先に来た方)、全ての外向きのメッセージはキューに入ります。 キューは外向きのHTTPリクエストが完了し、(もしあれば)送信カウントダウンが完了したときにフラッシュされます。
Reactorのバッチメッセージ送信システムは Union の "バイナリリクエスト" HTTP通信モデルの一部です。このモデルは二つの方針をバランスします: 一つは、応答性を最大化するために、Reactorは常にUnionサーバーに対して開かれたHTTPリクエストを保持します(これはサーバーからのメッセージの受信に使用します)。もう一方は、効率を最大化するために、外向きのHTTPリクエストが既に待ち状態であるときには Reactor は絶対に追加のリクエスト送信を行わず、待ち状態の外向きのHTTPリクエストが無いときには Reactor は Unionサーバーに指定された送信ディレイ以上の頻度では決してメッセージを送りません。
デフォルトの送信ディレイはHTTPCOnnection.DEFAULT_SEND_DELAYで定義され、大多数のアプリケーションに適合します。 しかしながら、サーバー負荷を削減する必要があるアプリケーションは送信ディレイを増加させることでメッセージ配送頻度を下げる選択ができます。 反対に、最大の応答性を必要とするアプリケーションは送信ディレイを減少させることでメッセージ配送頻度をあげるか、メッセージキューを完全に無効化するために送信ディレイを-1にセットするという選択ができます。 メッセージキューが無効なとき、既に待ち状態の外向きのリクエストが無く、送信すべきメッセージがあるときにはいつでも新たな外向きのHTTPリクエストがオープンされます。 警告: 送信ディレイを無効化するか、あるいはそれを 200ミリ秒より低い値に設定することは、サーバー負荷の上昇を招くおそれがあります。 送信ディレイをカスタム値にセットするときは、確実にアプリケーション全体の挙動をテストしてください。
パラメータ
milliseconds:int — ミリ秒で表した、バッチ処理されるメッセージの送信ディレイです。 デフォルトはHTTPConnection.DEFAULT_SEND_DELAYです。 |
関連項目
| setServer | () | メソッド |
override public function setServer(host:String, port:int):void| バージョン : | Reactor 1.0.0 |
ドキュメントはIConnectionのsetServer()メソッドを参照してください。
パラメータ
host:String | |
port:int |
関連項目
| toString | () | メソッド |
override public function toString():String| バージョン : | Reactor 1.0.0 |
このオブジェクトのString表現を提供します。
戻り値String |
| RECEIVE_UPC | イベント |
ConnectionEventnet.user1.reactor.ConnectionEvent.RECEIVE_UPCUPCフォーマットのメッセージをIConnectionオブジェクトから受信するときに送出されます。
関連項目
| DEFAULT_SEND_DELAY | 定数 |
public static const DEFAULT_SEND_DELAY:int = 200| バージョン : | Reactor 1.0.0 |
新しいHTTPConnectionオブジェクトに使用されるデフォルトの送信ディレイです。 詳細は、setSendDelay()を参照してください。
関連項目