ruby 应用程序在服务器中显示多个进程,尽管它是同一个应用程序。这是一个windows服务器。
如何在不从 Windows 任务管理器手动关闭它们的情况下删除此应用程序的所有进程,但只有一个进程。
请帮忙。
根据您运行应用程序的方式(Passenger?Thin?Mongrel?mod_ruby?),这实际上可能是正常的。例如,该应用程序会保持一个进程池运行,直到它们超时,每个进程都在等待新的请求,就像动态 php/fastcgi 池一样。
同样,根据彼得的评论,它可能正在使用线程吗?如果是这样,它可能同样正常,因为它会在返回之前启动一些后台作业,并且这些进程会一直存在,直到这些作业完成。
据报道,随着时间的推移,thin 会为每个连接打开多个线程,我想一个线程将是一个进程。
试试看有没有
thin restart -C /etc/thin/app.yml
帮助。
请参阅http://jordanhollinger.com/2011/04/22/how-to-use-thin-effectivly
限制您的最大连接数,将超时设置为最小也将有所帮助。