###前提・実現したいこと
Sinatraを用いたWebアプリにおいて、CoffeeScriptテンプレートを使用しています。
二つのCoffeeScriptに対して同時にアクセスした場合(HTML側で二つとも呼び出している形)、Webエンジン(Puma)ごとハングアップします。
###発生している問題・エラーメッセージ
エラーメッセージもなく完全に固まります。Ctrl+C
で終了もできなくなります。通常のkill
では終了せず、kill -KILL
で強制終了する必要があります。
###該当のソースコード
下記のようにSinatra標準のCoffeeScriptテンプレートを呼び出しています。特にオプション等は指定していません。JSエンジンにはthrubyracerを使用しています。
【app.rbからCoffeeScriptのマッピング部分のみ抜粋】
Ruby
1get '/first.js' do 2 coffee :first 3end 4 5get '/second.js' do 6 coffee :second 7end
現象の再現が可能な検証用のコード全てについては、下記Gistにアップしています。ご確認下さい。
https://gist.github.com/raccy/32706eab92cc07a077f2373d7626f80f
###試したこと
アクセスが一つのみであれば、現象は発生しません。また、therubyracerではなく外部のNode.jsであれば発生しないようです。PumaではなくWEBrickでも発生することを確認しています。タイミングの問題なのか、起きるときと起きないときがあり、その他の条件はよくわかっていません。
###補足情報(言語/FW/ツール等のバージョンなど)
OS X 10.11.5
Ruby 2.3.1
各gemは2016年7月2日時点の最新を使用
同様の現象をCentOS 6.8 (x86_64)でも確認しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/02 22:47