09/10/2018, 23:00

Server Load Là gì? Cách đếm SL trong PHP

Lang thang trên mạng thấy có một số trang nói đến Server Load mà em không hiểu là gì, và làm sao dùng PHP để tính Server Load
amida viết 01:05 ngày 10/10/2018
Chắc là 1 kiểu tính thời gian nạp trang đó hả
Mình nghe cái tên wen wen
binhvn viết 01:04 ngày 10/10/2018
có lẽ là như vậy, không biết có ai biết về nó tường tận không giảng cho mình một bài với, phải mở mang đầu óc chứ không thì chết
amida viết 01:07 ngày 10/10/2018
À, mình mới nghĩ ra cách tính, kô biết phải hay kô thôi

Code:
 <?php
 // Để đoạn này ở đâu trang
 // Lấy thời gian hiện tại là thời gian bắt đầu load
 $startime = time();
 ?>
Code:
 <?php
 // Đặt đoạn này ở cuối trang
 // Tình thời gian load và in ra
 $endtime = time() - $startime;
 print "Trang này được load trong vòng:&nbsp;".$ẹndtime."&nbsp;giây";
 ?>
Không biết có đúng kô, ai thấy sai thì giúp sửa nha
NsT viết 01:08 ngày 10/10/2018
cái bạn nói ko phải là server load. Code đó cũng ko dùng để tính time dc

Ý bạn nói thì đúng, nhưng code thì có vẻ ko ổn. Cái code này chỉ là đếm thời gian load trang web thôi

Server load là thời gian respond của server. Nếu bạn dùng Cpanel bạn có thể xem cái server load ở phần thống kê của họ khi nào server load lên cao thì có nghĩa lúc đó site bạn có lượng truy cập đông hoặc dùng nhiều queries hoặc bị ddos.
kid08 viết 01:04 ngày 10/10/2018
thế anh NsT chỉ cách lấy SL đc ko
amida viết 01:08 ngày 10/10/2018
À, tôi cứ nghĩ sever load là tính thời gian load của 1 trang Thank 4 ur teaching
binhvn viết 01:07 ngày 10/10/2018
thank NST đã giải thích, nhưng vấn đề là làm sao để viết code PHP tính server load cơ. Trong các forum như VBB, IBF hiện nay đều có chức năng tính Server Load hết, có điều mình không biết code của nó như thế nào cả chán thật
scripter viết 01:01 ngày 10/10/2018
Nhớ là host bạn cho phép hỗ trợ hàm exec(). Finally, đây là một ví dụ đơn giản.

PHP Code:
<?php

//You can replace the domain with an IP if you wish

$site "yourdomain.com";  //this is the site you wish to check

// Let's check our common ports 80, 21, and 110
$http fsockopen($site80);
$ftp fsockopen($site21);
$pop3 fsockopen($site110);

if (
$http) {
 
$status .= "<font face=\"Arial\"><font size=\"2\"><b>HTTP</b>: Working</font></font><br>";
}
else {
 
$status .= "<font face=\"Arial\"><font size=\"2\"><b>HTTP</b>: Not Working</font></font><br>";
}

if (
$ftp) {
 
$status .= "<font face=\"Arial\"><font size=\"2\"><b>FTP</b>: Working</font></font><br>";
}
else {
 
$status .= "<font face=\"Arial\"><font size=\"2\"><b>FTP</b>: Not Working</font></font><br>";
}

if (
$pop3) {
 
$status .= "<font face=\"Arial\"><font size=\"2\"><b>POP3/SMTP</b>: Working</font></font><br>";
}
else {
 
$status .= "<font face=\"Arial\"><font size=\"2\"><b>POP3/SMTP</b>: Not Working</font></font><br>";
}
echo(
"$status");

echo(
"<hr>");

// Users and load information
$reguptime trim(exec("uptime"));
if (
$reguptime) {
  if (
preg_match("/, *(\d) (users?), .*: (.*), (.*), (.*)/"$reguptime$uptime)) {
    
$users***91;0***93; = $uptime***91;1***93;;
    
$users***91;1***93; = $uptime***91;2***93;;
    
$loadnow $uptime***91;3***93;;
    
$load15 $uptime***91;4***93;;
    
$load30 $uptime***91;5***93;;
  }
} else {
  
$users***91;0***93; = "Unavailable";
  
$users***91;1***93; = "--";
  
$loadnow "Unavailable";
  
$load15 "--";
  
$load30 "--";
}

echo(
"<b>Current Users:</b> $users***91;0***93;<br>
<b>Current Load:</b> 
$loadnow<br><b>Load 15 mins ago:</b> $load15<br><b>Load 15 mins ago:</b> $load30<br><hr>");

// Operating system
$fp = @fopen("/proc/version""r");
if (
$fp) {
  
$temp fgets($fp);
  
fclose($fp);

  if (
preg_match("/version (.*?) /"$temp$osarray)) {
    
$kernel $osarray***91;1***93;;
    
preg_match("/***91;0-9***93;{5,} (\((.* *)\)\))/"$temp$osarray);
    
$flavour $osarray***91;2***93;;
    
$operatingsystem $flavour." (".PHP_OS." ".$kernel.")";
    if (
preg_match("/SMP/"$buf)) {
      
$operatingsystem .= " (SMP)";
    }
  } else {
    
$result "(N/A)";
  }
} else {
  
$result "(N/A)";
}

echo(
"<b>Operating System:</b><br>$operatingsystem");
?>
binhvn viết 01:17 ngày 10/10/2018
hình như chỉ có thể tính Server Load trên các hệ thống UNIX hoặc Linux đúng không bác
Bài liên quan
0