首页 > 数据库 >go-zero配置DB的redis缓存

go-zero配置DB的redis缓存

时间:2024-01-25 18:44:59浏览次数:36  
标签:DB json redis zero Host type go config

配置定义:

# cat internal/config/config.go 
package config

import (
	"github.com/zeromicro/go-zero/rest"
	"github.com/zeromicro/go-zero/core/stores/cache"
)

type Config struct {
	rest.RestConf
	CacheRedis cache.CacheConf
}

对应的配置文件:

# cat etc/abc-api.yaml 
Name: abc-api
Host: 0.0.0.0
Port: 8888

CacheRedis: 
    - Host: 127.0.0.2
      port: 6379
      type: node

加载配置:

func main() {
	var c config.Config
	conf.MustLoad(*configFile, &c)
	fmt.Printf("Host: %s\n", c.CacheRedis[0].Host)
}

执行效果:

# ./abc
Host: 127.0.0.2
Type: node

配置源码

// CacheConf is an alias of ClusterConf.
type CacheConf = ClusterConf

// A ClusterConf is the config of a redis cluster that used as cache.
type ClusterConf []NodeConf

// A NodeConf is the config of a redis node that used as cache.
type NodeConf struct {
	redis.RedisConf
	Weight int `json:",default=100"`
}

// A RedisConf is a redis config.
type RedisConf struct {
	Host     string
	Type     string `json:",default=node,options=node|cluster"`
	Pass     string `json:",optional"`
	Tls      bool   `json:",optional"`
	NonBlock bool   `json:",default=true"`
	// PingTimeout is the timeout for ping redis.
	PingTimeout time.Duration `json:",default=1s"`
}

标签:DB,json,redis,zero,Host,type,go,config
From: https://www.cnblogs.com/aquester/p/17987916

相关文章

  • 技术解读 | KunDB助力头部金融机构关键系统的Oracle国产替代
    星环科技自主研发的分布式交易型数据库KunDB助力头部金融机构实现了关键系统的Oracle国产化替代。通过可视化迁移工具完成了对象与数据的平滑迁移,将原先两套Oracle系统(一套Oracle单机系统,一套OracleRAC系统)统一迁移到一套KunDB集群。并且基于常规国产服务器使得每日增量数据处理性......
  • mongodb表索引备份,索引的导出导入
    mongodb表索引备份,索引的导出导入背景发现有两个mongodb环境的数据库表索引不一致,另一个数据库有索引缺失,需要将一个数据库里的所有表索引导入到另一个数据库也可用于单独备份数据库所有表的索引写mongoshell的js脚本可参考官方文档https://docs.mongodb.com/manual/tutor......
  • GDB调试之Core dump分析(二十五)
    一、核心转储coredump基础 Linuxcoredump:一般称之为核心转储、内核转储,我们统称为转储文件。是某个时刻某个进程的内存信息映射,即包含了生成转储文件时该进程的整个内存信息以及寄存器等信息。转储文件可以是某个进程的,也可以是整个系统的,可以是进程活着的时候生成的,也可以是......
  • # WinDbg学习三(字符串通配符语法)
    说明星号(*)代表零个或多个字符。问号(?)代表任意单个字符。包含字符列表的方括号([])代表列表中的任何单个字符。恰好匹配列表中的一个字符。在这些括号内,您可以使用连字符(-)指定范围。例如,Prog[er-t7]am匹配“Progeam”、“Program”、“Progsam”、“Pro......
  • 近6成金融机构的选择!华为云GaussDB加快金融核心系统转型
    当前,数据库在金融机构的应用正在从办公、一般系统逐步迈入核心系统应用的深水区。如何构建安全可靠、高效稳定的核心系统数据库,支持业务运营和管理决策,成为了众多金融机构关注的焦点问题。近期,北京金融信息化研究所联合华为云、中国工商银行、中国邮政储蓄银行、华夏银行共同发布......
  • Redis实战篇
    实战篇Redis优秀博客黑马点评项目学习笔记(15w字详解,堪称史上最详细,欢迎收藏)-CSDN博客Redis实战篇|Kyle'sBlog(cyborg2077.github.io)开篇导读hutol工具使用对象bean和JsonStr互转//功能:javabean转jsonstr用途:存入到redisStringjsonstr=JSONUtil.toJsonSt......
  • GDB调试之多线程死锁调试(二十四)
    调试代码如下所示:#include<thread>#include<iostream>#include<vector>#include<mutex>usingnamespacestd;mutex_mutex1;mutex_mutex2;intdata1;intdata2;intdo_work_1(){ std::cout<<"线程函数do_work_1开始"<<......
  • AngusTester 和 JMeter JDBC 测试结果比较
    本次测试主要目的是对比AngusTester和JMeter对JDBC协议性能表现。测试环境以下测试AngusTester和JMeter使用相同环境。注意:本次测试是在同一台PC机上进行,如果想测试特定配置下数据库的准确性能,需要将测试机和MySQL服务器分开部署,或者使用更高配置的测试服务器。软......
  • 支撑核心系统分布式改造,GaussDB为江南农商银行筑稳根基
    本文分享自华为云社区《支撑核心系统分布式改造,GaussDB为江南农商银行筑稳根基》,作者:华为云头条。在移动互联网快速普及的当下,金融机构能否提供便捷、智能、个性化的金融服务,成为关乎业务开展和企业成长的重要命题。高性能、高可用、高安全的数据库,则是金融服务背后的重要支撑。......
  • 媒体声音|PolarDB 再升级:欢迎来到云数据库 x AI 新时代
    以下文章来源于产业家,作者产业媒体 作者|思杭编辑|皮爷出品|产业家 “搭积木”、“自动驾驶”、“三层解耦”,这些形象的标签成了1月17日阿里云开发者生态大会当天最出圈的词汇。 会上,一名小学生受邀上台演示了数据库查询的场景。一种“全民编程”的气氛向现场观众......