UNPKG

@codai/cbd

Version:

Codai Better Database - High-Performance Vector Memory System with HPKV-inspired architecture and MCP server

93 lines 2.67 kB
/** * Performance Optimization Manager * Connection pooling, caching, and resource optimization */ import { EventEmitter } from 'events'; interface ConnectionPoolConfig { minConnections: number; maxConnections: number; acquireTimeoutMillis: number; idleTimeoutMillis: number; maxRetries: number; } interface CacheConfig { maxSize: number; ttl: number; strategy: 'lru' | 'lfu' | 'fifo' | 'adaptive'; compression: boolean; } interface PerformanceMetrics { requestsPerSecond: number; averageResponseTime: number; memoryUsage: NodeJS.MemoryUsage; cpuUsage: number; cacheHitRate: number; connectionPoolUtilization: number; } declare class PerformanceOptimizationManager extends EventEmitter { private connectionPool; private cacheManager; private resourceMonitor; private queryOptimizer; private performanceMetrics; private isOptimizing; constructor(config: { connectionPool: ConnectionPoolConfig; cache: CacheConfig; monitoring: { metricsInterval: number; alertThresholds: any; }; }); private initializeOptimization; /** * Connection Pool Management */ acquireConnection(): Promise<DatabaseConnection>; releaseConnection(connection: DatabaseConnection): Promise<void>; /** * Intelligent Caching System */ getCached<T>(key: string): Promise<T | null>; setCached<T>(key: string, value: T, ttl?: number): Promise<void>; /** * Query Optimization */ optimizeQuery(query: string, params?: any[]): Promise<{ optimizedQuery: string; optimizedParams?: any[]; estimatedPerformance: { executionTime: number; memoryUsage: number; cacheability: number; }; }>; /** * Memory Optimization */ optimizeMemoryUsage(): Promise<{ memoryFreed: number; gcTriggered: boolean; optimizationActions: string[]; }>; /** * Real-time Performance Monitoring */ getCurrentMetrics(): PerformanceMetrics; /** * Automatic Performance Optimization */ runAutoOptimization(): Promise<{ optimizationsApplied: string[]; performanceImprovement: number; duration: number; }>; private setupAutoOptimization; private initializePerformanceTracking; private triggerGarbageCollection; private calculatePerformanceImprovement; } declare class DatabaseConnection { } export { PerformanceOptimizationManager, ConnectionPoolConfig, CacheConfig, PerformanceMetrics }; //# sourceMappingURL=performance-manager.d.ts.map