Ruby on rails 上帝与莫尼特

Ruby on rails 上帝与莫尼特,ruby-on-rails,ruby,monitoring,monit,god,Ruby On Rails,Ruby,Monitoring,Monit,God,哪一种用于过程监控?为什么?这两种解决方案都很好,它们都有一些优点和缺点 上帝配置文件是用Ruby编写的,所以基本上Ruby允许您做的所有事情都可以做,而且它有很多东西。Monit必须使用自己的语法进行配置,通常可以,但限制性更强。无论如何,您也可以使用Ruby生成monit配置(作为部署策略的一部分) 而且,monit使用的资源更少,所以如果您在VPS上或者没有任何空闲内存,monit可能是一个更好的选择。就个人而言,我更喜欢上帝,因为它更容易配置 这是一个非常好的例子。在对这个屏幕的评论中也

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

这两种解决方案都很好,它们都有一些优点和缺点

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

而且,monit使用的资源更少,所以如果您在VPS上或者没有任何空闲内存,monit可能是一个更好的选择。就个人而言,我更喜欢上帝,因为它更容易配置


这是一个非常好的例子。在对这个屏幕的评论中也有很多反馈。

上帝严重泄漏内存,所以我选择了Monit作为我的VPS。Monit经常以2MB左右的内存运行,而在Ruby 1.8.6上运行的my god install在大约36小时内泄漏到大约60MB的内存。我不想监控我的系统监控工具,所以我放弃了God,转而使用Monit,并且没有任何问题。

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

上帝有很多问题,包括:

  • 它会泄漏内存
  • 它无法停止和重新启动进程
  • 我在一家报纸上写了一篇关于它的文章


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

    monit有自己的问题:

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


    现在我觉得这很烦人。幸运的是,您可以通过依赖项的“组”特性勉强解决问题,但这并不特别令人满意。无论如何,这是我在V5.1.1

    < P>对任何发现这篇文章的人来说,你也可以认为是上帝的替代品。虽然我希望上帝在过去两年里解决了它的记忆问题,但我知道蓝药丸从一开始就以很小的规模运行。虽然还没有monit小,但bluepill的占用空间非常合理(对我来说约16 MB VIRT,13 MB RES)。

    是的,上帝的Ruby配置文件(以及内置的XMPP通知程序)让我特别感兴趣。既然我有自己的专用服务器,我想我会试试。在你使用上帝之前,一定要做好功课。我和我认识的几个运行主要Rails应用程序的人一样,也遇到过一些可靠性问题。上帝做得很好的一件事就是把市场本身当作一颗神奇的“容易”的银弹。这与事实相去甚远。看来你不能让一个过程依赖上帝的另一个过程这是一个重大问题。如果您想在web应用程序之前启动数据库,则不能!它将尝试同时启动这两个。我很惊讶没有人提到这一点;God需要根访问权限和cn内核模块。很多动态云托管服务,如heroku或dotcloud,都没有这些功能。有人知道Ruby 1.8.7是否仍然存在这个问题吗?我真的很喜欢上帝的“Rubynes”,我想试一试,不管怎样。我不确定,如果你喜欢,我会说,记住它,无论如何试一试。我不是反对上帝,我很喜欢它,我只是不能忍受泄漏。它的使用很好,只是对我来说不实用。上帝的记忆泄漏大约在一年前就被修复了(测试)+1,因为它同时使用了这两种方法,并且花时间分享了你的经验。这距离上一篇文章(2年)已经有很长时间了。难道上帝仍然是一个好的解决方案吗。上帝改善了吗?它有内存泄漏问题吗?这是一个好的选择吗?你能更具体一点吗?什么问题?当然sudo god check using event system:netlink启动事件处理程序分叉新进程分叉进程pid=15795终止进程[fail]从未收到进程退出事件我们在集群上运行monit已经三个多月了,这是我们做出的最好的系统管理决策之一。自从我们打开Monit后,它还没有崩溃或泄漏内存。如果你经历了与上帝相同的挫折,并且对此感到愤怒,我要求你提供一些链接到我的博客帖子,这样当其他人谷歌“上帝”或“上帝进程监视器”时,他们可以被我的咆哮警告。看起来慷慨的贡献者已经(可能)帮助消除了上帝的内存泄漏。God内存泄漏在大约一年前(测试)就已经修复,但不幸的是,它在停止和重新启动进程时仍然存在问题。到目前为止,我喜欢bluepill。很好的语法,易于使用。但它几乎没有文档。做任何事情都需要仔细阅读代码。。请给我一些基本的文档,告诉我我可以用它做什么。这些原因正是我选择使用它的原因god@oreoshake你什么意思上帝根本不处理依赖关系。评论者抱怨Monit不能很好地处理嵌套的依赖项,天哪,你根本不能指定一个接一个地启动一个进程!这是一个愤怒的评论,当时我正忙着讨论PID问题,在我的例子中没有加载依赖项。修复了我这边的问题,仍然使用monit:)