Lewati ke konten

Mesin Konfigurasi (Configuration Engine)

Modul konfigurasi mengurai, memvalidasi, dan mengelola opsi runtime gateway. Modul ini menyelesaikan path file, melakukan validasi skema dengan diagnostik terperinci, mengganti variabel lingkungan melalui interpolasi string, dan menyesuaikan worker thread serta batas konkurensi secara otomatis sesuai spesifikasi CPU host. Lapisan ini menjamin keabsahan konfigurasi sebelum server melakukan binding ke soket.

SimbolJenisTanda TanganTujuan
ConfigOptimizationinterfaceinterface ConfigOptimizationConfiguration optimization recommendation
LoadPatterninterfaceinterface LoadPatternLoad pattern analysis
AutoTunerConfiginterfaceinterface AutoTunerConfigAuto-tuner configuration
AutoTunerclassclass AutoTunerAuto-Tuner class
InterpolationErrorclassclass InterpolationError extends ErrorInterpolation error for tracking issues during variable replacement
InterpolationOptionsinterfaceinterface InterpolationOptionsInterpolation options
interpolateStringfunctionfunction interpolateString(Interpolate environment variables in a string value @param value - String value that may contain ${ENV_VAR} or ${ENV_VA
interpolateConfigfunctionfunction interpolateConfig<T>(Recursively interpolate environment variables in a configuration object @param config - Configuration object @param opt
extractEnvVarsfunctionfunction extractEnvVars(config: unknown): Set<string>Extract all environment variable references from a configuration object Useful for documentation and validation @param
validateEnvVarsfunctionfunction validateEnvVars(Validate that all required environment variables are set @param config - Configuration object @param env - Environment
ConfigLoaderclassclass ConfigLoaderClass export for ConfigLoader.
createConfigLoaderfunctionfunction createConfigLoader(options:Function export for createConfigLoader.
OpenApiRouteinterfaceinterface OpenApiRouteInterface export for OpenApiRoute.
OpenApiRouteOptionsinterfaceinterface OpenApiRouteOptionsInterface export for OpenApiRouteOptions.
routesFromOpenApifunctionfunction routesFromOpenApi(Function export for routesFromOpenApi.
ConfigValidatorclassclass ConfigValidatorClass export for ConfigValidator.
configValidatorconstconst configValidator: ConfigValidator = new ConfigValidator()Const export for configValidator.
VersionComparisonenumenum VersionComparisonVersion comparison result
ConfigMigrationtypetype ConfigMigration = (config: Record<string, unknown>) => Record<string, unknown>Configuration migration function
VersionInfointerfaceinterface VersionInfoConfiguration version info
parseVersionfunctionfunction parseVersion(version: string): { major: number; minor: number; patch: number }Parse semantic version string into components
compareVersionsfunctionfunction compareVersions(v1: string, v2: string): VersionComparisonCompare two semantic versions
isCompatibleVersionfunctionfunction isCompatibleVersion(configVersion: string, currentVersion: string): booleanCheck if version is compatible (within 1 major version)
ConfigVersionManagerclassclass ConfigVersionManagerConfiguration version manager
configVersionManagerconstconst configVersionManager = new ConfigVersionManager('1.2.0')Default configuration version manager instance

Membaca file konfigurasi JSON atau JS dan memvalidasi skema rute yang diperlukan secara rekursif.

Menggantikan pola ${ENV_VAR:-fallback} secara aman tanpa membocorkan konten lingkungan.

Memeriksa memori yang tersedia dan konkurensi perangkat keras untuk menghitung ukuran Keep-Alive pool yang optimal.

  • src/config/auto-tuner.ts
  • src/config/interpolation.ts
  • src/config/loader.ts
  • src/config/openapi-routes.ts
  • src/config/validator.ts
  • src/config/versioning.ts