問題タブ [eventmachine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Ruby on Rails アプリケーションから eventmachine サーバーを開始および停止するための最良のオプションは何ですか?
修正:
具体的には、Ruby on Rails コントローラーからEventMachine (EM)を開始および停止しようとしています。
(これには「Thin」がうまくいくと言われました。)
ノート:
この EM サーバーは、Ruby on Rails アプリケーションを実行するMongrelサーバーとは別のものです。(EM サーバーは、Arduino マイクロコントローラーからの接続を受け入れています。)
サーバーとして「Thin」を実行しています..HTTPリクエストとArduinoの接続の両方を受け入れることができる必要があります。
ストレートな EventMachine 以外のサーバーを推奨する場合は、上記のコードを実行するコードを提供してください。
ここで入手可能な完全なコントローラーコード: http://pastie.org/1698383
ruby-on-rails - em-mongoの例?
dbからテキストをロードして分析し、キーワードにフラグを付けてdbを更新するテキストアナライザスクリプトにem-mongoを使用することを検討しています。
em-mongoの動作例をいくつか見てみたいと思います。私が見つけたのはgithubem-mongoリポジトリだけでした。
ruby - eventmachine で複数のワーカー プロセスを起動する方法は?
Rails 3、eventmachine、rabbitmq を使用しています。
メッセージをキューに発行するとき、複数のワーカー プロセスを起動する必要があります。
eventmachine が私のシナリオのソリューションであることを理解しています。
一部のタスクは、他のタスクよりも時間がかかります。
eventmachine を使用すると、ほとんどのコード サンプルから、常に単一のスレッド/プロセスのみが実行されるように見えます。
一度に 2 ~ 4 個のワーカー プロセスを起動するにはどうすればよいですか?
ruby - EventMachine が一時停止して応答を待つ
さて、ボンネットの下で Cramp\Tramp => EventMachine を使用するコードがあります。コード:
コントローラー アクションで実行を継続するにはクエリの結果が必要ですが、データを取得する前に実行が終了したようです。レンダリングされたテキストは次のとおりです。
current_user false を待機中
私の宝石ファイルは次のとおりです。
ruby - RabbitMQ と Eventmachine を使用した Ruby SMPP、AMQP.stop 後の問題
私は理解できないrabbitmqに少し問題があります。私は使っている:
- ルビー バージョン 1.8.7
- AMQP GEM バージョン 0.7.0
- RabbitMQ v2.3.1
- ruby-smpp v0.4.0
私のコードは次のようになります。
テスト用にこの行を追加しました。EM.add_timer(30) {EventMachine::stop_event_loop}
30秒後。イベント ループを停止すると、35 秒間スリープし、すべてが再起動されます。問題は、 amq = MQ.new が何かを実行しているようで、エラーは発生しないのですが、サブスクライブが機能していないようです。また、エラーはありません。プロセスを停止して再度開始した後にのみ、再度サブスクライブしてメッセージを処理します。理由がわかりません
ruby-on-rails - 象徴的な「チャットシステム」ウェブアプリのメカニズム
これを設定させてください。私は中規模の教会でサウンド/マルチメディアで働いています。プラットフォームがサウンドルームまたはマルチメディアルームのいずれかと通信する必要がある場合があり、それについて明確にしたくありません。トランシーバーを試しましたが、率直に言って、かなり熱くなり、イヤフォンを付けてもトーキーが聞こえません。また、テキストメッセージは使用できません。遅すぎます。
現在の実用的なアイデアは、ある種のタブレット(iPadなど)を使用して、アイコンをタップするだけで迅速なメッセージを配信する非常にシンプルなアプリケーションを実行することです。たとえば、音楽監督は「サウンドルーム」のアイコンをタップできます。これにより、サウンド関連のアイテムを表示するコンテキスト固有の画面が表示されます。次に、「ピアノ」、「説教壇モニター」、「上」、「ロット」、「ドラム」、「ピアノモニター」、「下」、「少し」の順にタップします。私がどこに行くのか分かりますか?ネイティブアプリは速くてかっこいい(そして収益化が簡単)ように思えますが、必要がなければiOSでの開発を学びたくありません。Xoomを購入した場合に、Xoomで実行できるように、Webアプリにしたいです。;-)
私は過去数年間Railsを学びましたが、EventMachineのようなものには挑戦していません。「Juggernaut」は法案に合うかもしれないと思いますが、iPadにはFlashがありません。Flashを使用せずに適合する可能性のある他の何かを知っている人はいますか?
たぶん私はそれをiOS/Android用に譲歩して書く必要があるでしょう。もしそうなら、私はそれからどこから始めますか?
ruby-on-rails - EventMachine vs Node.js
共同サイトを開発するつもりです。機能の 1 つは、リアルタイムの変更による共同編集です。つまり、2 人以上のユーザーが同じドキュメントを編集している場合、変更が発生するとすぐに互いの変更を確認できます。私は Ruby on Rails の経験があるので、EventMachine を使用することを考えていましたが、Node.js に関するこの誇大宣伝により、代わりに使用することを検討していることはわかっています。では、EventMachine の代わりに Node.js を使用する主な利点は何でしょうか?
tl;dr EventMachine と Node.js の主な違いは何ですか (言語以外)?
ruby - eventmachine を使用したモンゴイドとモンゴマッパー
私はeventmachineに非常に慣れていないため、この質問に対する答えをオンラインで見つけることができませんでした。
現在、私は em-mongo を eventmachine と一緒に使用しており、基本的にドキュメントとそれぞれのオブジェクトの間の貧弱なマッパーを作成しました。mongoid と mongomapper は eventmachine 環境では使用できないことを確認したかっただけです。これらはブロックしているため、最初に eventmachine を使用するポイントが無効になるためです。また、これらのマッパーを作成する時間を無駄にしていません。:P
ruby-on-rails - Ruby IMAP IDLE 同時実行性 - 対処方法は?
私は、IMAP IDLE接続を利用して人々の電子メールが到着したときに表示する(今のところプライベートな)Webアプリケーションを構築しようとしています。
これを一緒にハックする方法と、それが私の Heroku RoR サーバーとどのように適合するかを理解するのに苦労しています。
IMAP サーバーに接続してアイドリングするための基本的なスクリプトを作成しました。次のようになります (簡略化)。
これにより、IMAP サーバーへの接続が 1 つ確立され、アイドリングが開始されます。ご覧のとおり、これはループでブロックされています。
ユーザーのために複数の IMAP 接続を同時にアイドル状態にしたいと考えています。最初は、次のように、それぞれをスレッドに入れたかっただけです。
私はまだスレッドにそれほど鋭敏ではありませんが、このソリューションでは、メインスレッドをブロックしてスレッドを待つ必要がありますか? したがって、次のようなことをすると:
それは機能しますが、スレッドを実行できるようにするために下部にループがなければ機能しませんか?
私の質問は、これを Heroku 上の Ruby On Rails アプリケーションとどのように融合させるのが最善でしょうか? 最後のループでスレッドをブロックすることはできません - どうすればこれを実行できますか? 別のサーバー?dyno more - おそらくワーカー?私は Event Machine について少し読んでいました - これで私の問題を解決できますか?
もう 1 つは、新しい imap クライアントを追加し、現在のクライアントをその場で削除できるようにしたいということです。それはどのように見えるでしょうか?おそらくキューで何か?
どんな助けやコメントも大歓迎です!
ruby - Thin / Rack /SinatraからRubyEventMachineチャネルにアクセスすることは可能ですか?
Sinatraを活用した内部プロジェクト用のシンプルでRESTfulな通知システムを構築したいと考えています。私は過去にEventMachineチャネルを使用してイベントをサブスクライブ/公開しましたが、以前のすべてのケースでは、EventMachineを直接使用していました。
Sinatraアプリケーションから、またはそのことについてはいくつかのRackミドルウェアからでも、EventMachineチャネル(Thinで実行)を作成、サブスクライブ、およびパブリッシュできるかどうかを誰かが知っていますか?