4

我们有许多云服务器,我正在构建一个新的服务器来测试资源的供应。

在我认为我应该这样做之前,我遇到了致命的崩溃方式,因为某种系统资源正在耗尽。

=INFO REPORT==== 14-Feb-2010::12:40:14 ===
Setting up: "http://sub48.localhost:9000" as pirate
Mnesia('ares@example.com'): Data may be missing, 
Corrupt logfile deleted: "(...)/sub48.localhost&9000&styles.DCL", {file_error,
"(...)/sub48.localhost&9000&styles.DCL", system_limit} 


=ERROR REPORT==== 14-Feb-2010::12:40:18 ===
Mnesia('ares@example.com'): ** ERROR ** (could not write core file: system_limit)
 ** FATAL ** Cannot open log file "(...)/sub48.localhost&9000&styles.DCL": 
{file_error, "(...)/sub48.localhost&9000&styles.DCL", system_limit}

操作系统是 Ubuntu 8.04 (LTS),但我们的其他操作系统是 Ubuntu 9.04 和 Ubuntu 9.10 - 我认为我们必须将它们标准化 :(

所以我的问题是:

  • 如何确定哪些资源正在耗尽?
  • 我可以采取哪些主动监控步骤来确保它不会再次发生?
  • 一般来说,我可以用 Erlang VM 耗尽哪些系统资源,我应该为它们采取哪些监控步骤?
4

1 回答 1

1

有一个名为os_mon的 erlang 模块,它可以让您监控各种资源,例如 cpu 负载。另请查看sasl OTP 应用程序,尤其是重载和警报处理程序。

于 2010-02-17T23:53:19.377 回答