Ruby on rails Rails线程不足
我目前正在开发一个IMAP服务,它从Gmail中提取用户电子邮件的滑动窗口,并出于性能原因将其存储在本地。传输、解码和存储电子邮件是可行的,但是通过IMAP IDLE命令空闲的线程在保持活力方面遇到了困难 会发生什么?线程通过运行rake任务启动,每个用户一个线程。这工作正常,如果IMAP空闲信号丢失、连接重置或线程死亡,我将重新启动有问题的线程。但代码似乎导致内存泄漏或其他原因,导致线程不足。换句话说,由于没有接收到IMAP IDLE信号,线程被成功地标识为死线程,但是当我尝试重新启动它们时,线程不会自行执行 更具体地说,内存使用量在几天内从64 MiB增加到>300 MiB,这可能会导致线程不足。不过,我对此并不确定。在登台计算机上使用较少的线程(15个用户仅=15个线程,加上Ruby IMAP库中的15个额外线程)进行调试,并计算创建的对象时,只能识别出内存使用的微不足道的增加 因此,我的问题是……;)Ruby on rails Rails线程不足,ruby-on-rails,ruby,multithreading,memory-leaks,rake,Ruby On Rails,Ruby,Multithreading,Memory Leaks,Rake,我目前正在开发一个IMAP服务,它从Gmail中提取用户电子邮件的滑动窗口,并出于性能原因将其存储在本地。传输、解码和存储电子邮件是可行的,但是通过IMAP IDLE命令空闲的线程在保持活力方面遇到了困难 会发生什么?线程通过运行rake任务启动,每个用户一个线程。这工作正常,如果IMAP空闲信号丢失、连接重置或线程死亡,我将重新启动有问题的线程。但代码似乎导致内存泄漏或其他原因,导致线程不足。换句话说,由于没有接收到IMAP IDLE信号,线程被成功地标识为死线程,但是当我尝试重新启动它们时,
- 如何正确地调试它
- Ruby是否存在线程不足问题?我们也尝试了JRuby,但没有效果
- 还有其他人经历过或有其他人经历过类似的问题吗