問題タブ [thin]
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 - Thin / Rack /SinatraからRubyEventMachineチャネルにアクセスすることは可能ですか?
Sinatraを活用した内部プロジェクト用のシンプルでRESTfulな通知システムを構築したいと考えています。私は過去にEventMachineチャネルを使用してイベントをサブスクライブ/公開しましたが、以前のすべてのケースでは、EventMachineを直接使用していました。
Sinatraアプリケーションから、またはそのことについてはいくつかのRackミドルウェアからでも、EventMachineチャネル(Thinで実行)を作成、サブスクライブ、およびパブリッシュできるかどうかを誰かが知っていますか?
ruby - nginx proxy_pass でリクエスト URL を保持する方法
シンアプリ サーバーを使用しようとしていたところ、1 つの問題がありました。
アプリケーションを使用して、 nginxが要求を Thin (または Unicorn) にプロキシproxy_pass http://my_app_upstream;
すると、 nginx によって送信された変更された URL が受信されます ( http://my_app_upstream
)。
私が望むのは、アプリが大きく依存しているため、元の URL とクライアントからの元の要求を変更せずに渡すことです。
nginx のドキュメントには次のように書かれています。
未処理の形式で URI を送信する必要がある場合は、URI 部分なしでディレクティブ proxy_pass を使用する必要があります。
しかし、関連するサンプルが実際に URI を使用しているため、それを正確に構成する方法がわかりません。
クライアントからの元のリクエスト URLを保持する方法を教えてください。
ruby - OSX/LinuxではMonit+RVM + Thin
何時間も試した後(そして神とブルーピルも試した後)、この問題を解決する方法がまったくわからないので、ここで質問することにしました。
Railsアプリを持っています。Thinをアプリサーバーとして使用したい。Monitを使用してThinインスタンスを監視したいと思います。RVMを使用して、Rubyバージョンをローカルユーザーとして管理しています。
次のmonitファイルを設定しました。これは、おそらく私がやりたいことを実行しますが、実行しません。
単にstart program
コマンドライン(Monitの外)にコピー/貼り付けすると、機能します。stop program
後でThinインスタンスを停止する場合も同様です。ただし、Monitを介して実行すると、機能しないようです。
-v
詳細モードで実行すると、次のようになります。
これは、Thinが初期化されないことを私に信じさせます。Monitはroot
何かとして実行されますか?もしそうなら、私は「システム」RubyではなくRVMを使用しているので、明らかに正しいgemがインストールされていません。私は現在OSXを使用しています(ただし、最終的にはLinuxにデプロイする予定です)-これの原因が何であるかを誰かが知っていますか?また、Monitがroot経由で実行されている場合、どうすればRVMを使用させることができますか?または、Monitに開始/停止プログラムを実行するように指示することもできますMichael:staff
(OSX上にあると思いますか?)
どんな助けでも大歓迎です!
ruby-on-rails - Windows 上のシン HTTP Web サーバー
私は現在、NGINX プロキシの背後にある基本的なクラスターを形成するために、Windows で実行されているシン Web サーバーを取得しようとしていますが、これはかなり難しいことがわかっています。誰かが実際にこれを起動して実行することに成功したかどうか疑問に思っていましたか?
私が試したことのいくつかの例を挙げると:
このエラーメッセージは本当にわかりません。これを試しているシステム(私の開発システム)の環境出力の下に含めました
誰かがこれを実験していることを願っています。また、Ruby on Rails では Windows のサポートがないことが非常に深刻な問題であることに頭を悩ませ始めていると言わざるを得ません。私はその言語とプログラミングを本当に楽しんでいますが、コンパイルできない依存関係があるため、Windows マシンで動作させるのは苦痛です...
ruby-on-rails - シンサーバーを使用した Capistrano デプロイ
サーバーと開発マシンの間で自動デプロイを行うために Capistrano をいじっています。カピストラーノが bundle exec コマンドを使用してサーバーを起動できないように見えることを除いて、ほぼ設定済みです。私は常に次のエラーを受け取ります:
編集: 構成ファイルは現在 /var/www/apps/current/thin.yml にあります
関連する最後のセクションのみをコピーしました。ファイルなどの全体のコピーは正常に機能します。失敗しているように見えるクラスターを開始しているだけです。すべての Capistrano を処理する deploy.rb ファイルは次のとおりです。
編集: ファイルは次のように変更されました。
編集:これは私の thin.yml ファイルです
編集: 現在、次の問題が発生しています。
最終ステップでシステムから cap deploy コマンドを実行すると、「GemFile が見つかりません」というエラーが表示されます: サーバーの起動
移行は実行されません
クラスターを手動で起動することもできなくなったようです。シンの 1 つのインスタンスのみが起動しています。
更新: これは、デプロイ先のサーバーの gem 環境設定です。この情報は、cap シェルを使用して次のコマンドを実行することによって取得されます。
ruby-on-rails - 1つのアプリケーションのみでシンを開始するにはどうすればよいですか?
/ etc /thin/にいくつかのymlファイルがあります。thinを実行するservice thin stop -C /etc/thin/app.yml
と、指定したアプリケーションだけでなく、すべてのアプリケーションが停止します。
指定されたアプリケーションのみを停止/開始するためにシンになるにはどうすればよいですか?
更新:うーん、/etc/init.d/thin
これがあります:$DAEMON restart --all $CONFIG_PATH
。それは多くのことを説明しています。よりスマートなinit.dスクリプトはありますか?これは私のスクリプトです:
https://gist.github.com/1003131
参照:
ruby-on-rails - Rails 3.1 の HTTP ストリーミングは Thin で動作しますか?
Rails 3.1 は HTTP ストリーミングをサポートしていますが、互換性のある Web サーバーでのみサポートされています。3.1 リリース候補を発表するブログ投稿では、Unicorn について言及しています: http://weblog.rubyonrails.org/2011/5/22/rails-3-1-release-candidate
また、API ドキュメントにも Unicorn について言及されており、Passenger のスタブがあります: https://github.com/rails/rails/blob/master/actionpack/lib/action_controller/metal/streaming.rb
Thin がサポートされているかどうかを知っている人はいますか? サポートされている場合、構成情報はどこにありますか?
ruby - Rack::FiberPool で保持されない Sinatra セッション
セッションはリクエスト間で保持されませんが、何が間違っているのかわかりません。コード!
ruby-on-rails - Thin および SSL を使用する場合の間違ったプロトコル
だから私はこのように痩せています:
それから私はするつもりです
以下を行うダミーコントローラーアクションがあります。
そして出力は
https
代わりにすべきではありませんか?
ruby-on-rails - Rails 3 バンドラーの更新
nginx の背後にあるシン 1.2.11 でアプリケーションを実行しています。開発マシンで使用bundle update
し、git にコミットしてからcap deploy
. ただし、薄いと次のエラーが発生します。
サーバーには、システム全体に次の宝石がインストールされています。
私のアプリケーションのGemfile:
シンにはラック 1.3 が必要ですが、Gemfile にはラック 1.2.3 が必要です。ジェムの管理方法が間違っていませんか? デプロイと適切な gem コントロールを管理する適切な方法は何ですか?
の使用が機能することがわかりましbundle exec thin start
たが、使用できるようにするソリューションを好みます/etc/init.d/thin start
。