簡體   English   中英

連接未建立后在JRuby中具有多線程環境

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM