2

Ruby 用の堅牢な TCP サーバー (JavaScript 用の Node.js など) を推奨できる人はいますか? Ruby で使用できる TCPServer クラスがあることは理解していますが、複数のクライアントやマルチスレッドなどを処理するコードを記述する必要がないため、より堅牢なものが必要です。Ruby TCP 用のライブラリ/フレームワークはありますか?サーバーはNode.jsのようなものですか?

4

2 に答える 2

3

EventMachineまたはCelluloidが必要なようです。EM はイベント駆動型の同時実行であり、node.js と非常によく似た動作をします。Celluloid は、より伝統的なマルチスレッドです。

MRI を使用している場合は、MRI Ruby の同時実行モデルの制限により、最初に EM を検討することをお勧めします。JRuby を使用している場合は、Celluloid が適切なソリューションである可能性があります。

于 2012-12-17T23:23:25.363 に答える
1

シナトラ、特に彼らの「README 」を見てください。非常に使いやすく、複数のクライアントとマルチスレッドを処理し、セットアップも簡単です。

彼らが彼らのサイトのフロントページに示すように、これを「hi.rb」と呼ばれるファイルに入れてください:

require 'sinatra'

get '/hi' do
  "Hello World!"
end

次に、コマンドラインで次のように入力します。

gem install sinatra
ruby hi.rb

あなたはオフになって実行されます。を使用してThinをインストールするgem install thinと、Sinatraはそれを基盤となるHTTPdとして使用し、EventMachineの基盤を得ることができます

Sinatraは、私が知っているRubyでWeb上で何かを取得するための最も速くて簡単な方法であり、非常に堅牢です。通常の社内使用の場合、それは素晴らしいです。

シナトラの上の次のステップとして、パドリーノを見てください。Sinatraの上に構築されていますが、Railsに少し似ています。

HTMLコンテンツを生成するためにHAMLを調べることもお勧めします。それは素晴らしいツールです。

于 2012-12-18T14:17:28.290 に答える