排序
在Go语言中,为什么使用错误的DSN时,sql.Open函数不会立即报错?
Go语言sql.Open函数延迟连接行为分析 本文探讨Go语言中sql.Open函数在使用错误DSN时为何不会立即报错的问题。 问题描述 如下Go代码使用错误的DSN(空字符串)连接MySQL数据库,但sql.Open函数并...
一文搞定Redis五大数据类型及应用场景
1.string类型 1-1 string类型数据的基本操作 添加 / 修改数据:set key value 获取数据:get key 删除数据:del key 添加 / 修改多个数据:mset key value key1 value1 获取多个数据:mget key ...
为什么Go语言中使用锁的代码偶尔会导致panic?
Go语言并发编程中的锁与panic:一个案例分析 本文探讨一个常见的Go语言并发编程问题:即使使用了互斥锁(mutex),代码仍然可能出现panic: send on closed channel错误。 让我们分析以下代码片...
nginx怎么集成lua操作mysql
实现思路 直接在nginx做配置黑名单,通过编写逻辑块实现; 在服务端(Java)中编写过滤器,在过滤器中统一拦截; 在服务端(Java)中编写拦截器,在拦截器中统一拦截; 这里列举了3种实现的思路...
Go语言函数参数传递:为什么指针变量在函数内修改后外部却不变?
Go语言函数参数传递中的指针变量陷阱:为何函数内修改外部变量无效? 本文分析一个Go语言程序中关于指针变量赋值的常见问题。程序尝试在函数内部修改指向数据库连接对象的指针变量,但主函数中...
Go语言类型检查:如何利用`var _ HelloInter = (*Cat)(nil)`确保接口实现?
go语言类型检查的巧妙运用:确保接口实现的最佳实践 本文探讨Go语言中一个常用的类型检查技巧:var _ HelloInter = (*Cat)(nil),以及它如何确保接口的正确实现。 该技巧常用于包含接口HelloInt...
redis分布式锁如何实现原理
分布式锁,是控制分布式系统之间同步访问共享资源的一种方式。 在分布式系统中,常常需要协调他们的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源...
分享Redis常见面试题
介绍:Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API的非关系型数据库。 专题推荐:2020年redis...
redis数据过期时间设置
1、Redis中key的的过期时间 通过EXPIRE key seconds命令来设置数据的过期时间。返回1表明设置成功,返回0表明key不存在或者不能成功设置过期时间。在key上设置了过期时间后key将在指定的秒数后...
redis实现限速器的几种方式
redis 实现限速器的几种方式。 GET + INCR + EXPIRE 先获取 key 的当前值,如果没有超出限制再执行 INCR 增1,如果 key 不存在,使用 redis 的事务初始化 key 和过期时间。 (推荐:...