xypriss 2.0.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/README.md +171 -381
  2. package/dist/cjs/mods/security/src/algorithms/hash-algorithms.js +10 -0
  3. package/dist/cjs/mods/security/src/algorithms/hash-algorithms.js.map +1 -1
  4. package/dist/cjs/mods/security/src/components/cache/cacheSys.utils.js +10 -0
  5. package/dist/cjs/mods/security/src/components/cache/cacheSys.utils.js.map +1 -1
  6. package/dist/cjs/mods/security/src/components/cache/index.js +10 -2
  7. package/dist/cjs/mods/security/src/components/cache/index.js.map +1 -1
  8. package/dist/cjs/mods/security/src/components/fortified-function/index.js +9 -0
  9. package/dist/cjs/mods/security/src/components/fortified-function/index.js.map +1 -1
  10. package/dist/cjs/mods/security/src/components/fortified-function/security/security-handler.js +10 -0
  11. package/dist/cjs/mods/security/src/components/fortified-function/security/security-handler.js.map +1 -1
  12. package/dist/cjs/mods/security/src/core/crypto.js +14 -0
  13. package/dist/cjs/mods/security/src/core/crypto.js.map +1 -1
  14. package/dist/cjs/mods/security/src/index.js +10 -1
  15. package/dist/cjs/mods/security/src/index.js.map +1 -1
  16. package/dist/cjs/shared/logger/Logger.js +372 -29
  17. package/dist/cjs/shared/logger/Logger.js.map +1 -1
  18. package/dist/cjs/src/cluster/bun-cluster-manager.js +91 -1
  19. package/dist/cjs/src/cluster/bun-cluster-manager.js.map +1 -1
  20. package/dist/cjs/src/cluster/cluster-manager.js +15 -3
  21. package/dist/cjs/src/cluster/cluster-manager.js.map +1 -1
  22. package/dist/cjs/src/cluster/modules/AutoScaler.js +4 -4
  23. package/dist/cjs/src/cluster/modules/AutoScaler.js.map +1 -1
  24. package/dist/cjs/src/cluster/modules/CrossPlatformMemory.js +2 -2
  25. package/dist/cjs/src/cluster/modules/CrossPlatformMemory.js.map +1 -1
  26. package/dist/cjs/src/cluster/modules/EventLoopMonitor.js +270 -0
  27. package/dist/cjs/src/cluster/modules/EventLoopMonitor.js.map +1 -0
  28. package/dist/cjs/src/cluster/modules/GCStatsTracker.js +200 -0
  29. package/dist/cjs/src/cluster/modules/GCStatsTracker.js.map +1 -0
  30. package/dist/cjs/src/cluster/modules/HeapStatsCollector.js +111 -0
  31. package/dist/cjs/src/cluster/modules/HeapStatsCollector.js.map +1 -0
  32. package/dist/cjs/src/cluster/modules/NetworkTracker.js +162 -0
  33. package/dist/cjs/src/cluster/modules/NetworkTracker.js.map +1 -0
  34. package/dist/cjs/src/cluster/modules/ThroughputCalculator.js +186 -0
  35. package/dist/cjs/src/cluster/modules/ThroughputCalculator.js.map +1 -0
  36. package/dist/cjs/src/cluster/modules/WorkerManager.js +14 -15
  37. package/dist/cjs/src/cluster/modules/WorkerManager.js.map +1 -1
  38. package/dist/cjs/src/cluster/modules/{LoadBalancer.js → strategy/LoadBalancer.js} +1 -1
  39. package/dist/cjs/src/cluster/modules/strategy/LoadBalancer.js.map +1 -0
  40. package/dist/cjs/src/middleware/built-in/sqlInjection.js +335 -0
  41. package/dist/cjs/src/middleware/built-in/sqlInjection.js.map +1 -0
  42. package/dist/cjs/src/middleware/safe-json-middleware.js +1 -1
  43. package/dist/cjs/src/middleware/safe-json-middleware.js.map +1 -1
  44. package/dist/cjs/src/middleware/security-middleware.js +447 -332
  45. package/dist/cjs/src/middleware/security-middleware.js.map +1 -1
  46. package/dist/cjs/src/plugins/modules/index.js +9 -3
  47. package/dist/cjs/src/plugins/modules/index.js.map +1 -1
  48. package/dist/cjs/src/server/FastServer.js +41 -1
  49. package/dist/cjs/src/server/FastServer.js.map +1 -1
  50. package/dist/cjs/src/server/ServerFactory.js +62 -2
  51. package/dist/cjs/src/server/ServerFactory.js.map +1 -1
  52. package/dist/cjs/src/server/components/fastapi/ClusterManagerComponent.js +32 -6
  53. package/dist/cjs/src/server/components/fastapi/ClusterManagerComponent.js.map +1 -1
  54. package/dist/cjs/src/server/components/fastapi/WorkerPoolComponent.js +206 -0
  55. package/dist/cjs/src/server/components/fastapi/WorkerPoolComponent.js.map +1 -0
  56. package/dist/cjs/src/server/components/fastapi/console/ConsoleInterceptor.js +3 -28
  57. package/dist/cjs/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -1
  58. package/dist/cjs/src/server/components/fastapi/modules/UFRP/WorkerPoolManager.js +265 -0
  59. package/dist/cjs/src/server/components/fastapi/modules/UFRP/WorkerPoolManager.js.map +1 -0
  60. package/dist/cjs/src/server/components/fastapi/modules/UFRP/workers/Logger.js +236 -0
  61. package/dist/cjs/src/server/components/fastapi/modules/UFRP/workers/cpu-tasks.js +294 -0
  62. package/dist/cjs/src/server/components/fastapi/modules/UFRP/workers/enhanced-cpu-worker.js +433 -0
  63. package/dist/cjs/src/server/components/fastapi/modules/UFRP/workers/io-worker.js +1615 -0
  64. package/dist/cjs/src/server/components/lifecycle/ServerLifecycleManager.js +143 -24
  65. package/dist/cjs/src/server/components/lifecycle/ServerLifecycleManager.js.map +1 -1
  66. package/dist/cjs/src/server/const/default.js +23 -9
  67. package/dist/cjs/src/server/const/default.js.map +1 -1
  68. package/dist/cjs/src/server/core/HttpServer.js +8 -8
  69. package/dist/cjs/src/server/core/HttpServer.js.map +1 -1
  70. package/dist/cjs/src/server/core/XyprissApp.js +284 -17
  71. package/dist/cjs/src/server/core/XyprissApp.js.map +1 -1
  72. package/dist/cjs/src/server/handlers/NotFoundHandler.js +1 -1
  73. package/dist/cjs/src/server/handlers/NotFoundHandler.js.map +1 -1
  74. package/dist/cjs/src/server/middleware/MiddlewareManager.js +57 -12
  75. package/dist/cjs/src/server/middleware/MiddlewareManager.js.map +1 -1
  76. package/dist/cjs/src/server/utils/forceClosePort.js +1 -1
  77. package/dist/cjs/src/server/utils/forceClosePort.js.map +1 -1
  78. package/dist/esm/mods/security/src/algorithms/hash-algorithms.js +10 -0
  79. package/dist/esm/mods/security/src/algorithms/hash-algorithms.js.map +1 -1
  80. package/dist/esm/mods/security/src/components/cache/cacheSys.utils.js +10 -0
  81. package/dist/esm/mods/security/src/components/cache/cacheSys.utils.js.map +1 -1
  82. package/dist/esm/mods/security/src/components/cache/index.js +10 -2
  83. package/dist/esm/mods/security/src/components/cache/index.js.map +1 -1
  84. package/dist/esm/mods/security/src/components/fortified-function/index.js +9 -0
  85. package/dist/esm/mods/security/src/components/fortified-function/index.js.map +1 -1
  86. package/dist/esm/mods/security/src/components/fortified-function/security/security-handler.js +10 -0
  87. package/dist/esm/mods/security/src/components/fortified-function/security/security-handler.js.map +1 -1
  88. package/dist/esm/mods/security/src/core/crypto.js +14 -0
  89. package/dist/esm/mods/security/src/core/crypto.js.map +1 -1
  90. package/dist/esm/mods/security/src/index.js +10 -1
  91. package/dist/esm/mods/security/src/index.js.map +1 -1
  92. package/dist/esm/shared/logger/Logger.js +372 -29
  93. package/dist/esm/shared/logger/Logger.js.map +1 -1
  94. package/dist/esm/src/cluster/bun-cluster-manager.js +91 -1
  95. package/dist/esm/src/cluster/bun-cluster-manager.js.map +1 -1
  96. package/dist/esm/src/cluster/cluster-manager.js +15 -3
  97. package/dist/esm/src/cluster/cluster-manager.js.map +1 -1
  98. package/dist/esm/src/cluster/modules/AutoScaler.js +4 -4
  99. package/dist/esm/src/cluster/modules/AutoScaler.js.map +1 -1
  100. package/dist/esm/src/cluster/modules/CrossPlatformMemory.js +2 -2
  101. package/dist/esm/src/cluster/modules/CrossPlatformMemory.js.map +1 -1
  102. package/dist/esm/src/cluster/modules/EventLoopMonitor.js +268 -0
  103. package/dist/esm/src/cluster/modules/EventLoopMonitor.js.map +1 -0
  104. package/dist/esm/src/cluster/modules/GCStatsTracker.js +198 -0
  105. package/dist/esm/src/cluster/modules/GCStatsTracker.js.map +1 -0
  106. package/dist/esm/src/cluster/modules/HeapStatsCollector.js +109 -0
  107. package/dist/esm/src/cluster/modules/HeapStatsCollector.js.map +1 -0
  108. package/dist/esm/src/cluster/modules/NetworkTracker.js +160 -0
  109. package/dist/esm/src/cluster/modules/NetworkTracker.js.map +1 -0
  110. package/dist/esm/src/cluster/modules/ThroughputCalculator.js +184 -0
  111. package/dist/esm/src/cluster/modules/ThroughputCalculator.js.map +1 -0
  112. package/dist/esm/src/cluster/modules/WorkerManager.js +14 -14
  113. package/dist/esm/src/cluster/modules/WorkerManager.js.map +1 -1
  114. package/dist/esm/src/cluster/modules/{LoadBalancer.js → strategy/LoadBalancer.js} +1 -1
  115. package/dist/esm/src/cluster/modules/strategy/LoadBalancer.js.map +1 -0
  116. package/dist/esm/src/middleware/built-in/sqlInjection.js +333 -0
  117. package/dist/esm/src/middleware/built-in/sqlInjection.js.map +1 -0
  118. package/dist/esm/src/middleware/safe-json-middleware.js +1 -1
  119. package/dist/esm/src/middleware/safe-json-middleware.js.map +1 -1
  120. package/dist/esm/src/middleware/security-middleware.js +447 -332
  121. package/dist/esm/src/middleware/security-middleware.js.map +1 -1
  122. package/dist/esm/src/plugins/modules/index.js +9 -3
  123. package/dist/esm/src/plugins/modules/index.js.map +1 -1
  124. package/dist/esm/src/server/FastServer.js +41 -1
  125. package/dist/esm/src/server/FastServer.js.map +1 -1
  126. package/dist/esm/src/server/ServerFactory.js +62 -2
  127. package/dist/esm/src/server/ServerFactory.js.map +1 -1
  128. package/dist/esm/src/server/components/fastapi/ClusterManagerComponent.js +32 -6
  129. package/dist/esm/src/server/components/fastapi/ClusterManagerComponent.js.map +1 -1
  130. package/dist/esm/src/server/components/fastapi/WorkerPoolComponent.js +204 -0
  131. package/dist/esm/src/server/components/fastapi/WorkerPoolComponent.js.map +1 -0
  132. package/dist/esm/src/server/components/fastapi/console/ConsoleInterceptor.js +2 -27
  133. package/dist/esm/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -1
  134. package/dist/esm/src/server/components/fastapi/modules/UFRP/WorkerPoolManager.js +263 -0
  135. package/dist/esm/src/server/components/fastapi/modules/UFRP/WorkerPoolManager.js.map +1 -0
  136. package/dist/esm/src/server/components/fastapi/modules/UFRP/workers/Logger.js +236 -0
  137. package/dist/esm/src/server/components/fastapi/modules/UFRP/workers/cpu-tasks.js +294 -0
  138. package/dist/esm/src/server/components/fastapi/modules/UFRP/workers/enhanced-cpu-worker.js +433 -0
  139. package/dist/esm/src/server/components/fastapi/modules/UFRP/workers/io-worker.js +1615 -0
  140. package/dist/esm/src/server/components/lifecycle/ServerLifecycleManager.js +143 -24
  141. package/dist/esm/src/server/components/lifecycle/ServerLifecycleManager.js.map +1 -1
  142. package/dist/esm/src/server/const/default.js +23 -9
  143. package/dist/esm/src/server/const/default.js.map +1 -1
  144. package/dist/esm/src/server/core/HttpServer.js +8 -8
  145. package/dist/esm/src/server/core/HttpServer.js.map +1 -1
  146. package/dist/esm/src/server/core/XyprissApp.js +284 -17
  147. package/dist/esm/src/server/core/XyprissApp.js.map +1 -1
  148. package/dist/esm/src/server/handlers/NotFoundHandler.js +1 -1
  149. package/dist/esm/src/server/handlers/NotFoundHandler.js.map +1 -1
  150. package/dist/esm/src/server/middleware/MiddlewareManager.js +57 -12
  151. package/dist/esm/src/server/middleware/MiddlewareManager.js.map +1 -1
  152. package/dist/esm/src/server/utils/forceClosePort.js +1 -1
  153. package/dist/esm/src/server/utils/forceClosePort.js.map +1 -1
  154. package/dist/index.d.ts +675 -516
  155. package/package.json +9 -9
  156. package/dist/cjs/src/cluster/index.js +0 -361
  157. package/dist/cjs/src/cluster/index.js.map +0 -1
  158. package/dist/cjs/src/cluster/modules/ClusterFactory.js +0 -539
  159. package/dist/cjs/src/cluster/modules/ClusterFactory.js.map +0 -1
  160. package/dist/cjs/src/cluster/modules/LoadBalancer.js.map +0 -1
  161. package/dist/cjs/src/server/components/fastapi/UltraFastRequestProcessor.js +0 -668
  162. package/dist/cjs/src/server/components/fastapi/UltraFastRequestProcessor.js.map +0 -1
  163. package/dist/cjs/src/server/components/fastapi/middlewares/MiddlewareAPI.js +0 -347
  164. package/dist/cjs/src/server/components/fastapi/middlewares/MiddlewareAPI.js.map +0 -1
  165. package/dist/cjs/src/server/components/fastapi/middlewares/MiddlewareMethodsManager.js +0 -204
  166. package/dist/cjs/src/server/components/fastapi/middlewares/MiddlewareMethodsManager.js.map +0 -1
  167. package/dist/cjs/src/server/components/fastapi/middlewares/middlewareManager.js +0 -953
  168. package/dist/cjs/src/server/components/fastapi/middlewares/middlewareManager.js.map +0 -1
  169. package/dist/cjs/src/server/components/fastapi/modules/UFRP/WorkerPool.js +0 -56
  170. package/dist/cjs/src/server/components/fastapi/modules/UFRP/WorkerPool.js.map +0 -1
  171. package/dist/esm/src/cluster/index.js +0 -339
  172. package/dist/esm/src/cluster/index.js.map +0 -1
  173. package/dist/esm/src/cluster/modules/ClusterFactory.js +0 -511
  174. package/dist/esm/src/cluster/modules/ClusterFactory.js.map +0 -1
  175. package/dist/esm/src/cluster/modules/LoadBalancer.js.map +0 -1
  176. package/dist/esm/src/server/components/fastapi/UltraFastRequestProcessor.js +0 -647
  177. package/dist/esm/src/server/components/fastapi/UltraFastRequestProcessor.js.map +0 -1
  178. package/dist/esm/src/server/components/fastapi/middlewares/MiddlewareAPI.js +0 -345
  179. package/dist/esm/src/server/components/fastapi/middlewares/MiddlewareAPI.js.map +0 -1
  180. package/dist/esm/src/server/components/fastapi/middlewares/MiddlewareMethodsManager.js +0 -202
  181. package/dist/esm/src/server/components/fastapi/middlewares/MiddlewareMethodsManager.js.map +0 -1
  182. package/dist/esm/src/server/components/fastapi/middlewares/middlewareManager.js +0 -951
  183. package/dist/esm/src/server/components/fastapi/middlewares/middlewareManager.js.map +0 -1
  184. package/dist/esm/src/server/components/fastapi/modules/UFRP/WorkerPool.js +0 -54
  185. package/dist/esm/src/server/components/fastapi/modules/UFRP/WorkerPool.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AutoScaler.js","sources":["../../../../../src/cluster/modules/AutoScaler.ts"],"sourcesContent":[null],"names":["cluster"],"mappings":"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"}
1
+ {"version":3,"file":"AutoScaler.js","sources":["../../../../../src/cluster/modules/AutoScaler.ts"],"sourcesContent":[null],"names":["cluster"],"mappings":"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"}
@@ -134,11 +134,11 @@ class CrossPlatformMemory {
134
134
  }
135
135
  try {
136
136
  const result = await this.executeMemoryCLI();
137
- logger.debug("memory", "Successfully retrieved memory info from Go CLI");
137
+ logger.debug("memory", "Successfully retrieved memory info from MCLI");
138
138
  return result;
139
139
  }
140
140
  catch (error) {
141
- logger.error("memory", "Failed to get memory info from Go CLI:", error);
141
+ logger.error("memory", "Failed to get memory info from MCLI:", error);
142
142
  if (this.fallbackEnabled) {
143
143
  logger.warn("memory", "Falling back to Node.js os module");
144
144
  return this.getFallbackMemoryInfo();
@@ -1 +1 @@
1
- {"version":3,"file":"CrossPlatformMemory.js","sources":["../../../../../src/cluster/modules/CrossPlatformMemory.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrossPlatformMemory.js","sources":["../../../../../src/cluster/modules/CrossPlatformMemory.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,268 @@
1
+ import { logger } from '../../../shared/logger/Logger.js';
2
+
3
+ /**
4
+ * Event Loop Monitor for Bun Workers
5
+ * Monitors event loop delay and utilization
6
+ */
7
+ class EventLoopMonitor {
8
+ constructor() {
9
+ this.eventLoopStatsCache = new Map();
10
+ this.delayHistory = new Map();
11
+ this.lastCollectionTime = new Map();
12
+ this.monitoringIntervals = new Map();
13
+ this.cacheTimeout = 1000; // 1 second cache
14
+ this.historyWindow = 300000; // 5 minutes history window
15
+ this.monitoringInterval = 100; // Monitor every 100ms
16
+ // Health thresholds (configurable)
17
+ this.healthyThreshold = 10; // < 10ms is healthy
18
+ this.warningThreshold = 50; // 10-50ms is warning
19
+ }
20
+ // > 50ms is critical
21
+ /**
22
+ * Get event loop statistics for a worker process
23
+ */
24
+ async getEventLoopStats(workerId) {
25
+ const now = Date.now();
26
+ const lastCollection = this.lastCollectionTime.get(workerId) || 0;
27
+ // Return cached stats if recent
28
+ if (now - lastCollection < this.cacheTimeout) {
29
+ const cached = this.eventLoopStatsCache.get(workerId);
30
+ if (cached) {
31
+ return cached;
32
+ }
33
+ }
34
+ try {
35
+ const stats = await this.collectEventLoopStats(workerId);
36
+ // Cache the results
37
+ this.eventLoopStatsCache.set(workerId, stats);
38
+ this.lastCollectionTime.set(workerId, now);
39
+ return stats;
40
+ }
41
+ catch (error) {
42
+ logger.debug("cluster", `Failed to collect event loop stats for worker ${workerId}:`, error);
43
+ // Return default stats on error
44
+ return {
45
+ delay: 0,
46
+ utilization: 0,
47
+ averageDelay: 0,
48
+ maxDelay: 0,
49
+ health: 'healthy',
50
+ };
51
+ }
52
+ }
53
+ /**
54
+ * Collect event loop statistics
55
+ */
56
+ async collectEventLoopStats(workerId) {
57
+ const history = this.delayHistory.get(workerId) || [];
58
+ const now = Date.now();
59
+ // Clean old history
60
+ const recentHistory = history.filter(h => now - h.timestamp <= this.historyWindow);
61
+ this.delayHistory.set(workerId, recentHistory);
62
+ if (recentHistory.length === 0) {
63
+ return {
64
+ delay: 0,
65
+ utilization: 0,
66
+ averageDelay: 0,
67
+ maxDelay: 0,
68
+ health: 'healthy',
69
+ };
70
+ }
71
+ // Calculate current delay (most recent measurement)
72
+ const currentDelay = recentHistory[recentHistory.length - 1]?.delay || 0;
73
+ // Calculate average delay
74
+ const delays = recentHistory.map(h => h.delay);
75
+ const averageDelay = delays.reduce((sum, d) => sum + d, 0) / delays.length;
76
+ // Calculate max delay
77
+ const maxDelay = Math.max(...delays);
78
+ // Calculate utilization (inverse of delay health)
79
+ const utilization = this.calculateUtilization(averageDelay);
80
+ // Determine health status
81
+ const health = this.determineHealth(currentDelay, averageDelay);
82
+ return {
83
+ delay: Math.round(currentDelay * 100) / 100,
84
+ utilization: Math.round(utilization * 100) / 100,
85
+ averageDelay: Math.round(averageDelay * 100) / 100,
86
+ maxDelay: Math.round(maxDelay * 100) / 100,
87
+ health,
88
+ };
89
+ }
90
+ /**
91
+ * Calculate event loop utilization percentage
92
+ */
93
+ calculateUtilization(averageDelay) {
94
+ // Utilization is inversely related to delay
95
+ // 0ms delay = 100% utilization
96
+ // Higher delays = lower utilization
97
+ if (averageDelay <= 1)
98
+ return 100;
99
+ if (averageDelay >= 100)
100
+ return 0;
101
+ // Logarithmic scale for better representation
102
+ const utilization = 100 - (Math.log10(averageDelay) * 50);
103
+ return Math.max(0, Math.min(100, utilization));
104
+ }
105
+ /**
106
+ * Determine health status based on delay metrics
107
+ */
108
+ determineHealth(currentDelay, averageDelay) {
109
+ const maxDelay = Math.max(currentDelay, averageDelay);
110
+ if (maxDelay <= this.healthyThreshold) {
111
+ return 'healthy';
112
+ }
113
+ else if (maxDelay <= this.warningThreshold) {
114
+ return 'warning';
115
+ }
116
+ else {
117
+ return 'critical';
118
+ }
119
+ }
120
+ /**
121
+ * Start monitoring event loop for a worker
122
+ */
123
+ startMonitoring(workerId) {
124
+ // Stop existing monitoring if any
125
+ this.stopMonitoring(workerId);
126
+ // In a real implementation, this would use performance hooks
127
+ // or IPC to get actual event loop delay from the worker
128
+ // For now, we'll simulate realistic delays
129
+ const interval = setInterval(() => {
130
+ this.measureEventLoopDelay(workerId);
131
+ }, this.monitoringInterval);
132
+ this.monitoringIntervals.set(workerId, interval);
133
+ logger.debug("cluster", `Started event loop monitoring for worker ${workerId}`);
134
+ }
135
+ /**
136
+ * Stop monitoring event loop for a worker
137
+ */
138
+ stopMonitoring(workerId) {
139
+ const interval = this.monitoringIntervals.get(workerId);
140
+ if (interval) {
141
+ clearInterval(interval);
142
+ this.monitoringIntervals.delete(workerId);
143
+ logger.debug("cluster", `Stopped event loop monitoring for worker ${workerId}`);
144
+ }
145
+ }
146
+ /**
147
+ * Measure event loop delay (simulated for now)
148
+ */
149
+ measureEventLoopDelay(workerId) {
150
+ // In a real implementation, this would use:
151
+ // const { performance } = require('perf_hooks');
152
+ // const start = performance.now();
153
+ // setImmediate(() => {
154
+ // const delay = performance.now() - start;
155
+ // this.recordDelay(workerId, delay);
156
+ // });
157
+ // For now, simulate realistic delays based on load patterns
158
+ const baseDelay = Math.random() * 5; // 0-5ms base delay
159
+ const loadSpike = Math.random() < 0.1 ? Math.random() * 45 : 0; // 10% chance of 0-45ms spike
160
+ const delay = baseDelay + loadSpike;
161
+ this.recordDelay(workerId, delay);
162
+ }
163
+ /**
164
+ * Record a delay measurement
165
+ */
166
+ recordDelay(workerId, delay) {
167
+ const now = Date.now();
168
+ let history = this.delayHistory.get(workerId) || [];
169
+ // Add new measurement
170
+ history.push({
171
+ timestamp: now,
172
+ delay,
173
+ });
174
+ // Clean old measurements
175
+ history = history.filter(h => now - h.timestamp <= this.historyWindow);
176
+ this.delayHistory.set(workerId, history);
177
+ // Clear cache to force recalculation
178
+ this.eventLoopStatsCache.delete(workerId);
179
+ // Log critical delays
180
+ if (delay > this.warningThreshold) {
181
+ logger.warn("cluster", `High event loop delay detected for worker ${workerId}: ${delay.toFixed(2)}ms`);
182
+ }
183
+ }
184
+ /**
185
+ * Clear cached stats for a worker
186
+ */
187
+ clearWorkerStats(workerId) {
188
+ this.stopMonitoring(workerId);
189
+ this.eventLoopStatsCache.delete(workerId);
190
+ this.delayHistory.delete(workerId);
191
+ this.lastCollectionTime.delete(workerId);
192
+ }
193
+ /**
194
+ * Clear all cached stats
195
+ */
196
+ clearAllStats() {
197
+ // Stop all monitoring
198
+ for (const workerId of this.monitoringIntervals.keys()) {
199
+ this.stopMonitoring(workerId);
200
+ }
201
+ this.eventLoopStatsCache.clear();
202
+ this.delayHistory.clear();
203
+ this.lastCollectionTime.clear();
204
+ }
205
+ /**
206
+ * Get all cached event loop stats
207
+ */
208
+ getAllCachedStats() {
209
+ return new Map(this.eventLoopStatsCache);
210
+ }
211
+ /**
212
+ * Get delay trends for a worker
213
+ */
214
+ getDelayTrends(workerId, minutes = 5) {
215
+ const history = this.delayHistory.get(workerId) || [];
216
+ const now = Date.now();
217
+ const windowMs = minutes * 60 * 1000;
218
+ return history
219
+ .filter(h => now - h.timestamp <= windowMs)
220
+ .map(h => ({
221
+ timestamp: h.timestamp,
222
+ delay: Math.round(h.delay * 100) / 100
223
+ }));
224
+ }
225
+ /**
226
+ * Get performance summary for a worker
227
+ */
228
+ getPerformanceSummary(workerId) {
229
+ const stats = this.eventLoopStatsCache.get(workerId);
230
+ if (!stats) {
231
+ return {
232
+ status: 'unknown',
233
+ recommendation: 'Start monitoring to get performance data',
234
+ metrics: {
235
+ currentDelay: 0,
236
+ averageDelay: 0,
237
+ maxDelay: 0,
238
+ utilization: 0,
239
+ },
240
+ };
241
+ }
242
+ let recommendation = '';
243
+ switch (stats.health) {
244
+ case 'healthy':
245
+ recommendation = 'Event loop performance is optimal';
246
+ break;
247
+ case 'warning':
248
+ recommendation = 'Consider reducing synchronous operations or increasing worker count';
249
+ break;
250
+ case 'critical':
251
+ recommendation = 'Immediate attention required - high event loop delay detected';
252
+ break;
253
+ }
254
+ return {
255
+ status: stats.health,
256
+ recommendation,
257
+ metrics: {
258
+ currentDelay: stats.delay,
259
+ averageDelay: stats.averageDelay,
260
+ maxDelay: stats.maxDelay,
261
+ utilization: stats.utilization,
262
+ },
263
+ };
264
+ }
265
+ }
266
+
267
+ export { EventLoopMonitor };
268
+ //# sourceMappingURL=EventLoopMonitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventLoopMonitor.js","sources":["../../../../../src/cluster/modules/EventLoopMonitor.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,198 @@
1
+ import { logger } from '../../../shared/logger/Logger.js';
2
+
3
+ /**
4
+ * Garbage Collection Statistics Tracker for Bun Workers
5
+ * Tracks GC events, timing, and performance impact
6
+ */
7
+ class GCStatsTracker {
8
+ constructor() {
9
+ this.gcStatsCache = new Map();
10
+ this.gcHistory = new Map();
11
+ this.lastCollectionTime = new Map();
12
+ this.cacheTimeout = 5000; // 5 seconds cache
13
+ this.historyWindow = 600000; // 10 minutes history window
14
+ }
15
+ /**
16
+ * Get GC statistics for a worker process
17
+ */
18
+ async getGCStats(workerId, pid) {
19
+ const now = Date.now();
20
+ const lastCollection = this.lastCollectionTime.get(workerId) || 0;
21
+ // Return cached stats if recent
22
+ if (now - lastCollection < this.cacheTimeout) {
23
+ const cached = this.gcStatsCache.get(workerId);
24
+ if (cached) {
25
+ return cached;
26
+ }
27
+ }
28
+ try {
29
+ const stats = await this.collectGCStats(workerId, pid);
30
+ // Cache the results
31
+ this.gcStatsCache.set(workerId, stats);
32
+ this.lastCollectionTime.set(workerId, now);
33
+ return stats;
34
+ }
35
+ catch (error) {
36
+ logger.debug("cluster", `Failed to collect GC stats for worker ${workerId}:`, error);
37
+ // Return default stats on error
38
+ return {
39
+ collections: 0,
40
+ timeSpent: 0,
41
+ averageTime: 0,
42
+ gcPressure: 0,
43
+ };
44
+ }
45
+ }
46
+ /**
47
+ * Collect GC statistics from process
48
+ */
49
+ async collectGCStats(workerId, pid) {
50
+ try {
51
+ // In a real implementation, this would use performance hooks or IPC
52
+ // to get actual GC stats from the worker process
53
+ // For now, we'll simulate based on typical patterns
54
+ const history = this.gcHistory.get(workerId) || [];
55
+ const now = Date.now();
56
+ // Clean old history
57
+ const recentHistory = history.filter(h => now - h.timestamp <= this.historyWindow);
58
+ this.gcHistory.set(workerId, recentHistory);
59
+ // Calculate stats from history
60
+ const collections = recentHistory.length;
61
+ const totalTime = recentHistory.reduce((sum, event) => sum + event.duration, 0);
62
+ const averageTime = collections > 0 ? totalTime / collections : 0;
63
+ // Calculate GC pressure based on frequency and duration
64
+ const recentEvents = recentHistory.filter(h => now - h.timestamp <= 60000); // Last minute
65
+ const gcPressure = this.calculateGCPressure(recentEvents);
66
+ const lastCollection = recentHistory.length > 0
67
+ ? new Date(recentHistory[recentHistory.length - 1].timestamp)
68
+ : undefined;
69
+ return {
70
+ collections,
71
+ timeSpent: totalTime,
72
+ averageTime,
73
+ lastCollection,
74
+ gcPressure,
75
+ };
76
+ }
77
+ catch (error) {
78
+ logger.debug("cluster", `Failed to collect GC stats for PID ${pid}:`, error);
79
+ return {
80
+ collections: 0,
81
+ timeSpent: 0,
82
+ averageTime: 0,
83
+ gcPressure: 0,
84
+ };
85
+ }
86
+ }
87
+ /**
88
+ * Calculate GC pressure score (0-100)
89
+ */
90
+ calculateGCPressure(recentEvents) {
91
+ if (recentEvents.length === 0) {
92
+ return 0;
93
+ }
94
+ // Factors that contribute to GC pressure:
95
+ // 1. Frequency of GC events
96
+ // 2. Duration of GC events
97
+ // 3. Trend over time
98
+ const frequency = recentEvents.length; // Events per minute
99
+ const averageDuration = recentEvents.reduce((sum, e) => sum + e.duration, 0) / recentEvents.length;
100
+ const totalTime = recentEvents.reduce((sum, e) => sum + e.duration, 0);
101
+ // Normalize scores (these thresholds are configurable)
102
+ const frequencyScore = Math.min(100, (frequency / 10) * 100); // 10+ events = 100%
103
+ const durationScore = Math.min(100, (averageDuration / 100) * 100); // 100ms+ avg = 100%
104
+ const timeScore = Math.min(100, (totalTime / 1000) * 100); // 1s+ total = 100%
105
+ // Weighted average
106
+ const pressure = (frequencyScore * 0.4) + (durationScore * 0.3) + (timeScore * 0.3);
107
+ return Math.round(Math.min(100, Math.max(0, pressure)));
108
+ }
109
+ /**
110
+ * Record a GC event (to be called by performance monitoring)
111
+ */
112
+ recordGCEvent(workerId, duration, type) {
113
+ const now = Date.now();
114
+ let history = this.gcHistory.get(workerId) || [];
115
+ // Add new event
116
+ history.push({
117
+ timestamp: now,
118
+ duration,
119
+ type,
120
+ });
121
+ // Clean old events
122
+ history = history.filter(h => now - h.timestamp <= this.historyWindow);
123
+ this.gcHistory.set(workerId, history);
124
+ // Clear cache to force recalculation
125
+ this.gcStatsCache.delete(workerId);
126
+ logger.debug("cluster", `GC event recorded for worker ${workerId}: ${duration}ms`);
127
+ }
128
+ /**
129
+ * Simulate GC events for testing (remove in production)
130
+ */
131
+ simulateGCEvent(workerId) {
132
+ // Simulate realistic GC durations (1-50ms typically)
133
+ const duration = Math.random() * 49 + 1;
134
+ const types = ['minor', 'major', 'incremental'];
135
+ const type = types[Math.floor(Math.random() * types.length)];
136
+ this.recordGCEvent(workerId, duration, type);
137
+ }
138
+ /**
139
+ * Clear cached stats for a worker
140
+ */
141
+ clearWorkerStats(workerId) {
142
+ this.gcStatsCache.delete(workerId);
143
+ this.gcHistory.delete(workerId);
144
+ this.lastCollectionTime.delete(workerId);
145
+ }
146
+ /**
147
+ * Clear all cached stats
148
+ */
149
+ clearAllStats() {
150
+ this.gcStatsCache.clear();
151
+ this.gcHistory.clear();
152
+ this.lastCollectionTime.clear();
153
+ }
154
+ /**
155
+ * Get all cached GC stats
156
+ */
157
+ getAllCachedStats() {
158
+ return new Map(this.gcStatsCache);
159
+ }
160
+ /**
161
+ * Get GC event history for a worker
162
+ */
163
+ getGCHistory(workerId, minutes = 10) {
164
+ const history = this.gcHistory.get(workerId) || [];
165
+ const now = Date.now();
166
+ const windowMs = minutes * 60 * 1000;
167
+ return history.filter(h => now - h.timestamp <= windowMs);
168
+ }
169
+ /**
170
+ * Get GC trends and patterns
171
+ */
172
+ getGCTrends(workerId) {
173
+ const history = this.getGCHistory(workerId, 5); // Last 5 minutes
174
+ if (history.length === 0) {
175
+ return {
176
+ eventsPerMinute: 0,
177
+ averageDuration: 0,
178
+ maxDuration: 0,
179
+ totalTimePercentage: 0,
180
+ };
181
+ }
182
+ const eventsPerMinute = history.length / 5; // 5 minute window
183
+ const durations = history.map(h => h.duration);
184
+ const averageDuration = durations.reduce((sum, d) => sum + d, 0) / durations.length;
185
+ const maxDuration = Math.max(...durations);
186
+ const totalGCTime = durations.reduce((sum, d) => sum + d, 0);
187
+ const totalTimePercentage = (totalGCTime / (5 * 60 * 1000)) * 100; // % of 5 minutes
188
+ return {
189
+ eventsPerMinute: Math.round(eventsPerMinute * 100) / 100,
190
+ averageDuration: Math.round(averageDuration * 100) / 100,
191
+ maxDuration: Math.round(maxDuration * 100) / 100,
192
+ totalTimePercentage: Math.round(totalTimePercentage * 100) / 100,
193
+ };
194
+ }
195
+ }
196
+
197
+ export { GCStatsTracker };
198
+ //# sourceMappingURL=GCStatsTracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GCStatsTracker.js","sources":["../../../../../src/cluster/modules/GCStatsTracker.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}