printServiceInfo 打印服务信息
(port string, pluginManager *plugin.PluginManager)
| 236 | |
| 237 | // printServiceInfo 打印服务信息 |
| 238 | func printServiceInfo(port string, pluginManager *plugin.PluginManager) { |
| 239 | // 启动服务器 |
| 240 | fmt.Printf("服务器启动在 http://localhost:%s\n", port) |
| 241 | |
| 242 | // 输出代理信息 |
| 243 | if config.AppConfig.UseProxy { |
| 244 | fmt.Printf("使用SOCKS5代理: %s\n", config.AppConfig.ProxyURL) |
| 245 | } else { |
| 246 | fmt.Println("未使用代理") |
| 247 | } |
| 248 | |
| 249 | // 输出并发信息 |
| 250 | if os.Getenv("CONCURRENCY") != "" { |
| 251 | fmt.Printf("默认并发数: %d (由环境变量CONCURRENCY指定)\n", config.AppConfig.DefaultConcurrency) |
| 252 | } else { |
| 253 | channelCount := len(config.AppConfig.DefaultChannels) |
| 254 | pluginCount := 0 |
| 255 | // 只有插件启用时才计算插件数 |
| 256 | if config.AppConfig.AsyncPluginEnabled && pluginManager != nil { |
| 257 | pluginCount = len(pluginManager.GetPlugins()) |
| 258 | } |
| 259 | fmt.Printf("默认并发数: %d (= 频道数%d + 插件数%d + 10)\n", |
| 260 | config.AppConfig.DefaultConcurrency, channelCount, pluginCount) |
| 261 | } |
| 262 | |
| 263 | // 输出缓存信息 |
| 264 | if config.AppConfig.CacheEnabled { |
| 265 | fmt.Printf("缓存已启用: 路径=%s, 最大大小=%dMB, TTL=%d分钟\n", |
| 266 | config.AppConfig.CachePath, |
| 267 | config.AppConfig.CacheMaxSizeMB, |
| 268 | config.AppConfig.CacheTTLMinutes) |
| 269 | } else { |
| 270 | fmt.Println("缓存已禁用") |
| 271 | } |
| 272 | |
| 273 | // 输出压缩信息 |
| 274 | if config.AppConfig.EnableCompression { |
| 275 | fmt.Printf("响应压缩已启用: 最小压缩大小=%d字节\n", |
| 276 | config.AppConfig.MinSizeToCompress) |
| 277 | } |
| 278 | |
| 279 | // 输出GC配置信息 |
| 280 | fmt.Printf("GC配置: 触发阈值=%d%%, 内存优化=%v\n", |
| 281 | config.AppConfig.GCPercent, |
| 282 | config.AppConfig.OptimizeMemory) |
| 283 | |
| 284 | // 输出HTTP服务器配置信息 |
| 285 | readTimeoutMsg := "" |
| 286 | if os.Getenv("HTTP_READ_TIMEOUT") != "" { |
| 287 | readTimeoutMsg = "(由环境变量指定)" |
| 288 | } else { |
| 289 | readTimeoutMsg = "(自动计算)" |
| 290 | } |
| 291 | |
| 292 | writeTimeoutMsg := "" |
| 293 | if os.Getenv("HTTP_WRITE_TIMEOUT") != "" { |
| 294 | writeTimeoutMsg = "(由环境变量指定)" |
| 295 | } else { |
no test coverage detected