-1

首先,我说的是托管我的网站的服务器。

所以,几分钟前我在我的 cPanel 规格中注意到我的 CPU 使用率接近 100%(我的范围是 80-95%)。另一方面,我的内存使用率为 5-10%。

我想知道这个服务器是否会在未来崩溃。例如 CPU 使用率 = 100% 会发生什么?该服务器是否会崩溃?

我注意到这个 cpu 使用是因为我正在运行一个 ajax 脚本,它每 5 秒刷新一个 div。这个 div 的内容是来自 3 个随机数组的字符串,它们每 5 秒创建一次。

此外,我在我的代码(php 代码)上使用了许多变量 - 数组,我想知道是否必须刷新这些变量。例如

<html>
<?
$variable1 == something
$variable2 == something
$variable3 == something

?>
</html>
<? flush($variable1) ?>

是否需要在 php 上执行此操作(如在 C++ 上)?或者 php 有像 Java 这样的自动垃圾收集器吗?

编辑:我正在使用的 Ajax 脚本

索引.html

<html>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
    <script type="text/javascript">
    var auto_refresh = setInterval(
    function ()
    {
    $('#autoRefreshDiv').load('autoRefreshDiv.php').fadeIn("slow");
    }, 5000); // refresh every 5000 milliseconds
    </script>
    <body>
    <div id="autoRefreshDiv"></div>
</body>
    </html>

autoRefreshDiv.php

<?
$array1 = array("something1", "something2");
$array2 = array('something3','something4');
$array3 = array('something5','something6');
shuffle($array1);
shuffle($array2);
shuffle($array3);
echo $array1[0].'.....'.$array3[0].'.....'.$array2[0] ;
?>
4

2 回答 2

1

你的问题有点含糊。一些答案:如果 CPU 负载达到 100%,您的服务器不会崩溃。它可能响应较慢,但崩溃不是一种选择。您可能仍想对您的应用程序进行一些优化...

刷新与垃圾收集没有太大关系,但与输出缓冲有关。它会在脚本完成之前向用户发送一些数据。

如果您不谈论数千个变量,那么拥有许多变量并不是一个大问题。只要你没有疯狂的递归之类的,你就应该是安全的。由于您的记忆力最高只有 10%,因此没有危险。当然 php.ini 会限制脚本使用的内存总量。

我希望这能有所帮助。

于 2013-02-05T22:45:18.597 回答
0

您不必刷新变量,因为 PHP 具有在请求关闭时触发的 GC -> 每次 ajax 请求完成时。此外,使用许多变量很可能只会给您的 RAM 带来压力,而不是 CPU。

我认为每隔几秒生成一次大型随机数组会导致您的 CPU 使用率出现问题。

于 2013-02-05T22:48:03.520 回答