golang 操作redis
1. redis操作需要引入 github.com/gomodule/redigo/redis 包
go get github.com/gomodule/redigo/redis
2.封装redis操作对象,使用时便可调用 redis的 地址、端口、密码 放配置文件,用config获取即可
package databaseimport ("gin/config""time""github.com/gomodule/redigo/redis"
)var RedisClient *redis.Poolfunc init() {// 建立连接池RedisClient = &redis.Pool{// 从配置文件获取maxidle以及maxactive,取不到则用后面的默认值MaxIdle: 3, //最初的连接数量// MaxActive:1000000, //最大连接数量MaxActive: 0, //连接池最大连接数量,不确定可以用0(0表示自动定义),按需分配IdleTimeout: 300 * time.Second, //连接关闭时间 300秒 (300秒不使用自动关闭)Dial: func() (redis.Conn, error) { //要连接的redis数据库c, err := redis.Dial("tcp", config.RedisHost+":"+config.RedisPort)if err != nil {return nil, err}if config.RedisPassword != "" {if _, err := c.Do("AUTH", config.RedisPassword); err != nil {c.Close()return nil, err}}return c, nil},}
}
3.redis存储数据和读取数据
//引入redis连接包 . "gin/database"//存数据并设定过期时间(秒)rc := RedisClient.Get()defer rc.Close()key := "aaabbbccc"rc.Do("Set", key, "SUCCESS", "ex", 600)
// 引入 . "gin/database" 和 "github.com/gomodule/redigo/redis"// 读取redis缓存数据rc := RedisClient.Get()defer rc.Close()key := "aaabbb"val, _ := redis.String(rc.Do("Get", key))
读取数据时,存入的数据类型可能是 int 或 string ,在存入时转成了interface{}类型, 可使用 redis包自带的方法进行对应转换,如果 string 就用 redis.String() int 就用redis.Int() 当然,其他类型还有一些其他的基础类型的转换方法 Int64 Uint64 Float64 Bytes Bool StringMap IntMap
相关文章:
golang 操作redis
1. redis操作需要引入 github.com/gomodule/redigo/redis 包 go get github.com/gomodule/redigo/redis 2.封装redis操作对象,使用时便可调用 redis的 地址、端口、密码 放配置文件,用config获取即可 package databaseimport ("gin/config"…...
macOS - 获取硬件设备信息
文章目录 1、CPU获取方式 一: system_profiler获取方式二:sysctl, machdepmachdep 2、内存3、硬盘4、显卡5、声卡6、光驱7、系统序列号8、型号标识符9、UUID 等信息 10. 计算机名称 1、CPU 获取方式 一: system_profiler % syst…...
突破编程_C++_STL教程( queue 的基础知识)
1 std::queue 概述 std::queue 是 C 标准模板库(STL)中的一种容器适配器,它提供了队列(Queue)这种数据结构的功能。队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作…...
Hystrix 容错机制数据监控可视界面无法加载
在微服务项目中创建一个Hystrix模块配置好pom和yml文件但是在加载可视化界面的时候报如下问题 第一个界面报的错误 第二个界面报错误 熔断监控图形化界面报错Unable to connect to Command Metric Stream 解决方案 在yml文件在加如下代码 代码块 hystrix:dashboard:proxy…...
【Java】POI解析excel
一、相关介绍 POI技术 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 poi-ooxml能解析xls,xlsx。 poi能解析word、ppt、excel、xml等office软件 导入坐标: <depende…...
AI浸入社交领域,泛娱乐APP如何抓住新风口?
2023年是大模型技术蓬勃发展的一年,自ChatGPT以惊艳姿态亮相以来,同年年底多模态大模型技术在国内及全球范围内的全面爆发,即模型能够理解并生成包括文本、图像、视频、音频等多种类型的内容。例如,基于大模型的文本到图像生成工具…...
遥感图像地物分类流程
遥感图像地物分类流程 1. 制作标签 使用arcgis pro或者arcgis或者envi,画标签,保存为tiff格式 2. 处理标签数据 用python gdal库安装 osgdal库,如果安装失败就需要下载 对应库得 .whl去安装,网站具体搞忘了,可以百…...
JS13-事件的绑定和事件对象Event
绑定事件的两种方式/DOM事件的级别 DOM0的写法:onclick element.onclick function () {}举例: <body> <button>点我</button> <script>var btn document.getElementsByTagName("button")[0];//这种事件绑定的方式…...
pycorrector检测OCR错字实践
参考:https://github.com/shibing624/pycorrector/tree/master/examples/macbert stopwords.txt 添加专业停用词,避免错误 设置自定义词典,避免将正确的词错误检测成错误的词 from pycorrector import Corrector m Corrector() m.set_cus…...
RDD算子介绍(三)
1. join 将相同的key的值连接在一起,值的类型可以不同 val rdd1 : RDD[(String, Int)] sc.makeRDD(List(("a", 1), ("b", 2), ("c", 3))) val rdd2 : RDD[(String, Int)] sc.makeRDD(List(("a", 4), ("b", 5…...
Redis的脑裂问题
Redis 脑裂(Split-brain)问题是指在分布式系统中,特别是基于主从复制和哨兵(Sentinel)模式的Redis集群中,由于网络分区(network partition)而导致部分节点组成了独立可用的服务&…...
【算法】雪花算法生成分布式 ID
SueWakeup 个人中心:SueWakeup 系列专栏:学习Java框架 个性签名:人生乏味啊,我欲令之光怪陆离 本文封面由 凯楠📷 友情赞助播出! 目录 1. 什么是分布式 ID 2. 分布式 ID 基本要求 3. 数据库主键自增 4. UUID 5. S…...
FFplay使用滤镜添加字幕到现有视频显示
1.创建字幕文件4k.srt 4k.srt内容: 1 00:00:01.000 --> 00:00:30.000 日照香炉生紫烟2 00:00:31.000 --> 00:00:60.000 遥看瀑布挂前川3 00:01:01.000 --> 00:01:30.000 飞流直下三千尺4 00:01:31.000 --> 00:02:00.000 疑是银河落九天2.通过使用滤镜显示字幕在视…...
【Python + Django】Django模板语法 + 请求和响应
前言: 现在现在,我们要开始将变量的值展现在页面上面啦! 要是只会显示静态页面,我们的页面也太难看和死板了, 并且数据库的数据也没法展现在页面上。 但是呢,模板语法学习之后就可以啦!&…...
大数据面试总结 四
1、当hadoop集群中某一个节点挂了,内部数据流程是如何进行的? 每一个datanode都会定期向namenode发送heardbeat消息,当一段时间namenode没有接收到某一个datanode的消息,此时namenode就会将该datanode标记为死亡,并不…...
Spring Boot: 使用MongoOperations操作mongodb
一、添加依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4…...
PyTorch 深度学习(GPT 重译)(六)
十四、端到端结节分析,以及接下来的步骤 本章内容包括 连接分割和分类模型 为新任务微调网络 将直方图和其他指标类型添加到 TensorBoard 从过拟合到泛化 在过去的几章中,我们已经构建了许多对我们的项目至关重要的系统。我们开始加载数据…...
MyBatis3源码深度解析(十七)MyBatis缓存(一)一级缓存和二级缓存的实现原理
文章目录 前言第六章 MyBatis缓存6.1 MyBatis缓存实现类6.2 MyBatis一级缓存实现原理6.2.1 一级缓存在查询时的使用6.2.2 一级缓存在更新时的清空 6.3 MyBatis二级缓存的实现原理6.3.1 实现的二级缓存的Executor类型6.3.2 二级缓存在查询时使用6.3.3 二级缓存在更新时清空 前言…...
Go --- Go语言垃圾处理
概念 垃圾回收(GC-Garbage Collection)暂停程序业务逻辑SWT(stop the world)程序根节点:程序中被直接或间接引用的对象集合,能通过他们找出所有可以被访问到的对象,所以Go程序的根节点通常包括…...
力扣每日一题30:串联所有单词的子串
题目描述 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如,如果 words ["ab","cd","ef"], 那么 &q…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
