[英]Rails and MySQL - ActiveRecord::ConnectionNotEstablished in production environment
[英]Having a Multithreaded environment in JRuby after ConnectionNotEstablished
我有Rails(4.2.6)應用程序,在其中我使用了由Rufus :: Scheduler引起的用於后台數據處理的線程。 我在開發環境中有正常工作的應用程序,但是當我將其移至Nginx + passenger上投入生產時,即使沒有足夠的負載,也會出現ActiveRecord :: ConnectionNotEstablished異常。
從線程執行的對ActiveRecord :: Base的后代的所有調用都包裝到
ActiveRecord::Base.connection_pool.with_connection{}
我以前從未使用過多線程環境,但是在對問題進行了調查后,我建議可能是問題所在。
在JRuby下嘗試使用它是否合理,最好使用哪種容器?
主機系統是Ubuntu 14.04 x86_64。
我的天啊
我已經包含了gem'puma'http: //puma.io/,並使用了Nginx代理,它的工作原理! 我認為,此解決方案看起來比JRuby容易。
以前,我使用Passenger並有類似的驚喜。
首先,乘客進入空閑狀態時會殺死線程。 我已經在全球范圍內啟動了Thread和Rufus,並且乘客在開始2分鍾后就將其殺死。
其次,這個問題,這是乘客出乎意料的。
好了,問題已解決,此備忘錄可能可以幫助某人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.