上帝与莫尼特

时间:2009-04-20 13:13:02

标签: ruby-on-rails ruby monitoring monit god

哪一个用于过程监控?为什么?

6 个答案:

答案 0 :(得分:50)

上帝泄漏的记忆非常糟糕,所以我为我的VPS选择了Monit。 Monit不断运行大约2MB的RAM,而我在Ruby 1.8.6上运行的神安装在大约36小时内泄露到大约60MB的RAM。我不想监视我的系统监控工具,因此我取消了God并转到Monit并且完全没有问题。

答案 1 :(得分:47)

两种解决方案都很好,并且两者都有一些优点和缺点。

上帝配置文件是用Ruby编写的,所以你基本上可以做Ruby允许你做的所有事情,而且它有很多东西。 Monit必须使用自己的语法进行配置,通常可以,但限制性更强。无论如何,您还可以使用Ruby生成monit配置(作为部署策略的一部分)。

此外,monit使用较少的资源,因此如果您使用VPS或者没有任何备用内存,monit可能是更好的选择。就个人而言,我更喜欢上帝,因为它更具可配置性。

这是一个非常好的screencast on god。此截屏视频的评论中也有很多反馈。

答案 2 :(得分:22)

上帝有很多问题,包括:

  1. 泄密记忆
  2. 无法停止并重新启动流程
  3. 我在http://blog.bradgessler.com/use-monit-with-rails-not-god

    上写了一篇关于它的文章

    monit唯一真正的问题(如果它有问题)是,如果你正在运行大型集群,配置文件可能会有点冗长,但这可以通过模板系统解决。

答案 3 :(得分:8)

在我的专用Ubuntu服务器上,甚至让上帝运行时我遇到了很多问题。我最终放弃了。 Monit可能不是Ru​​by,但它基本上没有麻烦。

答案 4 :(得分:6)

对于任何发现这篇文章的人,你也可以考虑bluepill作为上帝的替代品。虽然我希望上帝在过去两年中解决了它的记忆问题,但我知道bluepill从一开始就是在一个小的足迹上运行。虽然仍然没有monit那么小,但是bluepill的足迹是非常合理的(~16 MB VIRT,13 MB RES对我来说)。

答案 5 :(得分:4)

Monit有自己的问题:

  • 空PID文件会导致问题。
  • 如果您有多个级别的依赖项,它会在启动较低级别的依赖项时启动顶级应用程序。对于某些用例来说,这可能很棒,但它不是特别灵活。

目前我发现它非常烦人。幸运的是,你可以通过他们的“群组”功能来克服你的依赖关系,但它并不是特别令人满意。无论如何,那是我对v5.1.1的看法