Bối cảnh theo dõi thời gian thực của máy chủ Cup và sử dụng bộ nhớ của cảnh là rất phổ biến, mặc dù không được thực hiện, nhưng trước khi mã viết tay, tôi đã không mong đợi dành 2 giờ để cuối cùng nhận ra Show Mặc dù tìm kiếm trên Internet cách sử dụng bộ nhớ PHP CUP của loại từ khóa này có rất nhiều bài báo, nhưng chủ yếu là trong môi trường Linux, trong Windows chỉ đưa ra quan điểm triển khai câu lệnh CMD, nhưng rất ít mã khả thi trực tiếp thực tế Mã lớp class SystemInfoWindows { / ** * Judge whether the specified file exists in the specified path, if not, create it * @param string $ fileName file name * @param string $ content file content * @return string return file path * / private function getFilePath ($ fileName, $ content) { $ path = dirname (FILE). "\\ $ fileName"; if (! file_exists ($ path)) { file_put_contents ($ path, $ content); } return $ path; } / ** * Get CPU usage vbs file generation function * @return string return vbs file path * / private function getCupUsageVbsPath () { return $ this-> getFilePath ( 'cpu_usage.vbs', "On Error Resume Next Set objProc = GetObject (\ "winmgmts: \\\\. \\ root \ cimv2: win32_processor = 'cpu0' \") WScript.Echo (objProc.LoadPercentage) " ); } / ** * Obtain total memory and available physical memory JSON vbs file generation function * @return string return vbs file path * / private function getMemoryUsageVbsPath () { return $ this-> getFilePath ( 'memory_usage.vbs', "On Error Resume Next Set objWMI = GetObject (\ "winmgmts: \\\\. \\ root \ cimv2 \") Set colOS = objWMI.InstancesOf (\ "Win32_OperatingSystem \") For Each objOS in colOS Wscript.Echo (\ "{\" \ "TotalVisibleMemorySize \" \ ": \" & objOS.TotalVisibleMemorySize & \ ", \" \ "FreePhysicalMemory \" \ ": \" & objOS.FreePhysicalMemory & \ "} \") Next " ); } / ** * Get CPU usage * @return Number * / public function getCpuUsage () { $ path = $ this-> getCupUsageVbsPath (); exec ("cscript -nologo $ path", $ usage); return $ usage [0]; } / ** * Get memory usage array * @return array * / public function getMemoryUsage () { $ path = $ this-> getMemoryUsageVbsPath (); exec ("cscript -nologo $ path", $ usage); $ memory = json_decode ($ usage [0], true); $ memory ['usage'] = Round ((($ memory ['TotalVisibleMemorySize']-$ memory ['FreePhysicalMemory']) / $ memory ['TotalVisibleMemorySize']) * 100); return $ memory; } } chế độ gọi $ info = new SystemInfoWindows (); $ cpu = $ info-> getCpuUsage (); $ memory = $ info-> getMemoryUsage (); echo "Current system CPU usage: {$ cpu}%, memory usage {$ memory ['usage']}%"; Cũng đọc phần này 👉 Laravel 6 thử bắt Giao dịch cơ sở dữ liệu Ở đây chúng tôi đang tìm hiểu tất cả về php lấy cửa sổ sử dụng cpu, lấy thông tin hệ thống, tải, mức sử dụng cpu cao, giám sát hệ thống, xem những gì đang sử dụng bộ nhớ, tải hiện tại cũng như mức sử dụng đĩa trên máy chủ chỉ định, tải trung bình hoặc nhiều thông tin khác Bây giờ, sau khi tất cả mã của bạn thêm vào phần sau, vui lòng chỉnh sửa nếu cần. Điều này sẽ làm là xuất thời gian CPU trên trang
Đây là một mã đơn giản để kiểm tra mức sử dụng CPU, tôi luôn sử dụng để xem liệu mã của mình có bị chậm vì lý do làm việc của CPU hay do lệnh gọi API hoặc các nội dung khác Đây là mức sử dụng CPU thực và KHÔNG mất thời gian để chạy, bạn có thể nhận được kết quả là 33 mili giây và tập lệnh có thể mất 40 giây nếu nó chỉ chờ nội dung từ những thứ như yêu cầu API hoặc cơ sở dữ liệu quá chậm
|