JS Counter lässt Rechner abstürzen
Verfasst: 12.12.2008 14:05
Hallo Gemeinde,
ich habe vor kurzem 2 Counter via JS auf meiner Seite eingefügt.
Nun habe ich vor ein paar Tagen die Info mehrerer Leute bekommen, das Ihre Rechner bei Nutzung meiner Seite abstürzen. Nach dem ich dann die Counter deaktiviert hatte, lief die Seite auch deutlich besser. Rein von der Nutzung gibt es keine Mängel, auffallen tut das ganze erst, beim Betrachten der CPU Auslastung - bei mir liegt sie nur bei ca 24%, jedoch haben einige User ältere Notebooks, bei denen die Auslastung bei 99-100% liegt.
Nun kenn ich aber O-Games, auf denen bis zu 500 solcher Counter gleichzeitig laufen und es aber null Performanceprobleme gibt.
Kann man die unten stehenden Counter iwi abändern, so das sich dieses Problem legt?
Schon mal besten Dank an die Helfer!
Ausgabe:
ich habe vor kurzem 2 Counter via JS auf meiner Seite eingefügt.
Nun habe ich vor ein paar Tagen die Info mehrerer Leute bekommen, das Ihre Rechner bei Nutzung meiner Seite abstürzen. Nach dem ich dann die Counter deaktiviert hatte, lief die Seite auch deutlich besser. Rein von der Nutzung gibt es keine Mängel, auffallen tut das ganze erst, beim Betrachten der CPU Auslastung - bei mir liegt sie nur bei ca 24%, jedoch haben einige User ältere Notebooks, bei denen die Auslastung bei 99-100% liegt.
Nun kenn ich aber O-Games, auf denen bis zu 500 solcher Counter gleichzeitig laufen und es aber null Performanceprobleme gibt.
Kann man die unten stehenden Counter iwi abändern, so das sich dieses Problem legt?
Schon mal besten Dank an die Helfer!
Code: Alles auswählen
<html>
<head>
<?php
// Lese letzten Scan aus
$sql = "SELECT Datum
FROM ".SCANLOGS."
ORDER BY Datum DESC;";
$result = mysql_query($sql) OR die(mysql_error());
$row = mysql_fetch_assoc($result);
// nur den ersten (also letzten Eintrag) auslesen
$date = $row['Datum'];
$ZeitE = getNextScan($date);
$timestamp = ($ZeitE);
$testausgabe = date("F, j Y H:i:s",$timestamp);
?>
<script language="JavaScript">
var end = new Date("<?PHP echo $testausgabe; ?>");
function toSt2(n) {
s = "";
if (n < 10) s += "0";
return (s + n).toString();
}
function toSt3(n) {
s = "";
if (n < 10) s += "00";
else if (n < 100) s += "0";
return (s + n).toString();
}
function countdown() {
d = new Date();
count = Math.floor(end.getTime() - d.getTime());
if(count > 0) {
miliseconds = toSt3(count%1000); count = Math.floor(count/1000);
seconds = toSt2(count%60); count = Math.floor(count/60);
minutes = toSt2(count%60); count = Math.floor(count/60);
hours = toSt2(count%24); count = Math.floor(count/24);
days = count;
document.getElementById("c1").innerHTML = hours + ":" + minutes + ":" + seconds
setTimeout("countdown()", 50);
}
else
{
document.getElementById("c1").style.color = "green";
document.getElementById("c1").innerHTML = "00:00:00";
document.getElementById("c1").innerHTML = "NOW";
}
}
window.onload = function(){
countdown();
}
</script>
<?php
$stunden = date("H");
$minuten = date("i");
$sekunden = date("s");
?>
<script language="JavaScript">
var serverZeit = new Date(0, 0, 0, <?php echo $stunden . ", " . $minuten . ", " . $sekunden;?>);
var LadeZeit = new Date();
function uhrAktualisieren(){
var aktZeit = new Date();
var serverAktZeit = new Date(aktZeit.valueOf() - LadeZeit.valueOf() + serverZeit.valueOf());
var h = serverAktZeit.getHours();
if (h <10) {h='0'+h;}
var m = serverAktZeit.getMinutes();
if (m <10) {m='0'+m;}
var s = serverAktZeit.getSeconds();
if (s <10) {s='0'+s;}
document.getElementById("uhr").innerHTML = h+':'+m+':'+s;
setTimeout('uhrAktualisieren()', 1000);
}
</script>
</head>
<body onLoad="uhrAktualisieren(),countdown()">
</body>
</html>
<?php
Code: Alles auswählen
<td align=\"center\"><b><i><span style=\"color:green\">Time: ".date("d.m.y")." <span id=\"uhr\">".date("H:i:s")."</span></span></i></b></td>
<td align=\"center\"><b><i><span style=\"color:#b10505\">NEXT SCAN: <span id=\"c1\"><span id=\"c2\"></span></span></i></b></td>