将配置加载逻辑从全局变量改为使用sync.Once确保单例模式, 优化了config包的结构,现在通过GetConfig方法来获取配置, 而不是直接访问全局变量。这种方式更加线程安全,并且 允许未来在不同包中异步加载配置而无需担心初始化顺序问题。 BREAKING CHANGE: 现在必须使用config.GetConfig()来获取配置, 而不是直接访问config.GlobalConfig。这可能需要更新任何 依赖于GlobalConfig的代码。