当前位置: 首页 > news >正文

滴道网站建设网站的优化seo

滴道网站建设,网站的优化seo,洛阳制作网站的公司,小红书推广方式关于 INI 配置文件与go-ini 1 )概述 在INI配置文件中可以处理各种数据的配置INI文件是一种简单的文本格式,常用于配置软件的各种参数go-ini 是地表 最强大、最方便 和 最流行 的 Go 语言 INI 文件操作库 Github 地址:https://github.com/go-…

关于 INI 配置文件与go-ini


1 )概述

  • 在INI配置文件中可以处理各种数据的配置
  • INI文件是一种简单的文本格式,常用于配置软件的各种参数
  • go-ini 是地表 最强大、最方便 和 最流行 的 Go 语言 INI 文件操作库
    • Github 地址:https://github.com/go-ini/ini
    • 官方文档: https://ini.unknwon.io/
    • 使用示例直达: https://ini.unknwon.io/docs/intro/getting_started

2 )使用

新建配置文件 conf/app.ini

app_name   =  xxproject
log_level  = DEBUG # possible values: DEBUG, INFO, WARNING, ERROR, FATAL
admin_path = /admin[mysql]
ip       = 192.168.0.6
port     = 3306
user     = root
password = 123456
database = gin[redis]
ip   = 127.0.0.1
port = 6379

在 main.go 文件中测试核心代码

package mainimport ("gopkg.in/ini.v1""github.com/gin-gonic/gin"
)func main() {// 创建一个默认的路由引擎r := gin.Default()//演示 "gopkg.in/ini.v1"模块的使用config, err := ini.Load("./conf/app.ini")if err != nil {fmt.Printf("Fail to read file: %v", err)os.Exit(1)}// 获取ini里面的配置fmt.Println(config.Section("").Key("app_name").String())fmt.Println(config.Section("mysql").Key("password").String())fmt.Println(config.Section("redis").Key("ip").String())// 给ini写入数据config.Section("").Key("app_name").SetValue("yyyproject")config.Section("").Key("admin_path").SetValue("/admin")config.SaveTo("./conf/app.ini")r.Run()
}
  • 上面演示了获取 ini 数据 和 写入 ini 数据
  • 如果是一些比较通用的数据建议写在一个go模块里,不用读取ini配置
  • 但是关于第三方的一些东西,都可以抽离在最外层,适用于不同环境下配置不同的值

GIN 不同环境的部署使用不同的配置

  • 在一般的部署中,会拆分研发环境,测试环境,UAT环境和生产环境四种
  • 因为一些数据库等第三方配置不可能使用相同的源,必定会进行环境隔离
  • 这时候就可以设定 development.ini, test.ini, uat.ini, production.ini
  • 这里举一个在 Jenkins 中的例子
    • 在Jenkins中设置 ENV 环境变量
    • 它的值将用于决定加载哪个INI文件
  • 传递环境变量到Go程序
    • 当Jenkins启动Go程序时,确保将ENV环境变量传递给它
    • 这样,Go程序就可以根据这个变量加载相应的INI文件

下面是 main.go 中的读取示例

package main  import ("fmt""log""gopkg.in/ini.v1""os"
)func loadConfig(env string) (*ini.File, error) {// 根据环境变量或其他机制确定INI文件路径filePath := fmt.Sprintf("./conf/%s.ini", env)cfg, err := ini.Load(filePath)if err != nil {return nil, err}return cfg, nil
}func main() {  // 假设环境变量 ENV 已经设置,如 ENV=development  env := os.Getenv("ENV")  cfg, err := loadConfig(env)  if err != nil {  log.Fatalf("Failed to load configuration: %v", err)  }  // 读取配置信息  dbHost := cfg.Section("database").Key("host").String()  dbPort := cfg.Section("database").Key("port").MustInt()  // ... 其他配置  fmt.Printf("Database Host: %s, Port: %d\n", dbHost, dbPort)  
}
  • 这样,Jenkins 在不同环境执行部署的时候,由于不同环境下的 ENV 配置会设置到
  • 当前的系统环境中,go程序在读取到ENV的时候,会引导读取不同的配置文件
  • 由此,对各个部署环境进行区分和隔离
http://www.hkea.cn/news/325698/

相关文章:

  • 新乡市封丘县建设局网站百度教育官网登录入口
  • 网站开发项目点击器
  • 建公司网站需要多少钱推广普通话手抄报内容资料
  • 东莞市建设监督网站首页app宣传推广方案
  • 网站设计基本功能域名免费注册0元注册
  • 徐州网站建设的特点营销咨询公司
  • 网站建设问题表在seo优化中
  • 网站建设公司 倒闭店铺推广方法
  • 网站搭建素材短视频培训
  • amazon虚拟机免费做网站百度信息流怎么收费
  • 深圳做网站推广公司聊城seo整站优化报价
  • 深圳专业app网站开发企业网站建设原则是
  • 网站开发师职责柳州网站建设哪里有
  • 自己做的网站怎么改电话网络推广代运营公司
  • 做水果的网站有哪些google高级搜索
  • 怎么用网站做文案百度推广可以自己开户吗
  • 做的好的新闻网站排名优化
  • 购物网站开发功能百度联盟个人怎么接广告
  • 网站如何盈利流量费网站seo搜索引擎的原理是什么
  • 泰安房产价格最新域名年龄对seo的影响
  • 网站打不开怎么回事引流推广平台有哪些
  • 课程网站建设特色成都seo外包
  • 建设厅安全员证书查询网站外链seo推广
  • 邢台手机网站建设服务百度查重软件
  • 网站开发开题报告ppt竞价运营是做什么的
  • 网站代理怎么做的网站推广策划思路
  • 长沙网站seo公司百度权重5的网站能卖多少钱
  • 常德网站开发百度推广登录首页网址
  • 网站建设软件设计推广官网
  • 网站运营阶段站长之家app