Add ResourceHub for real-time updates and implement web dashboard with REST API

- Created ResourceHub.cs for SignalR group management.
- Developed a modern web dashboard using Tailwind CSS for responsive design.
- Implemented real-time updates with SignalR for CPU, Memory, GPU, and Network usage.
- Added REST API endpoints for resource information and process management.
- Integrated process management features to view and terminate high-usage processes.
- Enhanced UI with loading spinners, notifications, and responsive tables.
- Included performance charts for historical CPU and Memory usage.
- Configured Swagger UI for API documentation.
- Established security features including process kill restrictions and API key authentication.
This commit is contained in:
Phoenix
2025-08-07 23:02:03 +08:00
parent aa30c9f034
commit 3d47fc1439
23 changed files with 1405 additions and 547 deletions
+2 -2
View File
@@ -770,7 +770,7 @@ namespace ResourceMonitorService.Services
var processInfo = new ProcessInfo
{
Id = p.Id,
ProcessId = p.Id,
Name = p.ProcessName,
MemoryUsage = memoryUsage,
MemoryUsagePercentage = totalSystemMemory > 0 ? (float)(memoryUsage * 100.0 / totalSystemMemory) : 0f,
@@ -818,7 +818,7 @@ namespace ResourceMonitorService.Services
_logger.LogDebug("Processed {ValidCount} valid processes, skipped {SkippedCount}", validProcesses.Count, skippedCount);
// Clean up old process entries to prevent memory leaks
CleanupOldProcessEntries(validProcesses.Select(p => p.Id).ToHashSet());
CleanupOldProcessEntries(validProcesses.Select(p => p.ProcessId).ToHashSet());
var topProcesses = validProcesses
.OrderByDescending(p => p.CpuUsage)