EventMachineは、任意のネットワーク通信のための高速、シングルスレッドのエンジンを実装しています。これは、Rubyで使用することは非常に簡単です。
EventMachineは、プログラムがネットワークプロトコルの実装に集中することができ、IPソケットですべての相互作用をラップします。これは、ネットワーク・サーバとクライアントの両方を作成するために使用することができます。
サーバまたはクライアントを作成するには、Rubyプログラムは、IPアドレスおよびポートを指定し、通信プロトコルを実装するモジュールを提供する必要があります。いくつかの標準的なネットワークプロトコルの実装は例として役立つように、主に、パッケージに設けられています。 EventMachineの本当の目的は、簡単にカスタムプロトコルが必要な場合は特に、TCP / IPを使用して他のプログラムとインタフェースするプログラムを有効にすることです。
Rubyプログラムは、ネットワークサーバーとクライアントのアドレスとポートを登録した後、イベント処理ループを入力してEventMachineを使用しています。 EventMachineは、クライアントとサーバで発生するすべての重要なイベントのためにユーザーが提供するコードへのコールバックを実行しますRubyでグルーコードが含まれています。これらのイベントは、接続の受け入れ、起動、データ受信、シャットダウン、およびタイマーイベントが含まれます。任意の処理は、1つまたは複数のリモートネットワークピア、ネットワーク接続の起動と停止、新しいイベントハンドラのインストールにデータを送信することを含む、イベントコールバックの間、ユーザコードによって実行することができる。
EventMachineは、ネットワークプログラミングのための非常に馴染みのモデルを実装しています。
これは強調します:
ソケットなどのネットワークオブジェクトからユーザコードの
1)最大の可能な単離;
2)最大のパフォーマンスとスケーラビリティ;
3)極端な使いやすさのユーザーコードのため。これは、低レベルのイベント処理やRubyプログラムにオブジェクトを様々なネットワークを公開する同様のプロジェクトよりも高いレベルのインタフェースを提供しようとします。
このの 強い新機能>このリリースでます。
- EMに並行性の検証を追加しました::イテレータます。
- 署名にFDを取得するために追加されましたget_file_descriptorます。
- 追加EM.attach_serverとEM.attach_socket_serverます。
- SMTPサーバーに追加starttls_optionsます。
- Windows上で修正されたclosesocketます。
- ルビー2.2でビルドを修正します。
- ルビー1.9に固定されたビルドエラーます。
- 固定タイマーリークます。
- 二重近くに固定された無限ループます。
- LLVMの上に固定されたコンパイルの問題ます。
- Win32の上に固定されたソケットのエラーコードます。
- はreceive_dataからポーズを呼び出すと、すぐに有効になります。
- reactor_running?フォーク後にfalseを返します。
DNS解決の間に
<強い>バージョン1.0.7の新のです何ます。
- EMに追加しました並行性の検証::イテレータ
- 署名にFDを取得するために追加されましたget_file_descriptorます。
- 追加EM.attach_serverとEM.attach_socket_serverます。
- SMTPサーバーに追加starttls_optionsます。
- Windows上で修正されたclosesocketます。
- ルビー2.2でビルドを修正します。
- ルビー1.9に固定されたビルドエラーます。
- 固定タイマーリークます。
- 二重近くに固定された無限ループます。
- LLVMの上に固定されたコンパイルの問題ます。
- Win32の上に固定されたソケットのエラーコードます。
- はreceive_dataからポーズを呼び出すと、すぐに有効になります。
- reactor_running?フォーク後にfalseを返します。
DNS解決の間に
コメントが見つかりません