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

下载网站专用空间我想创建一个网站自己玩玩

下载网站专用空间,我想创建一个网站自己玩玩,专业做二手房装修网站,网站建设架构选型一、redis操作总结 由于写redis命令的时候有提示符,所以下表只给出命令名称 数据类型操作简介字符串GET, SET, MGET, MSET, SETEX,DEL最基本的数据类型,存储任意二进制数据,支持简单操作和原子计数。适合存储重复数据。哈希HSET, HGET, HDE…

一、redis操作总结

由于写redis命令的时候有提示符,所以下表只给出命令名称

数据类型操作简介
字符串GET, SET, MGET, MSET, SETEX,DEL最基本的数据类型,存储任意二进制数据,支持简单操作和原子计数。适合存储重复数据。
哈希HSET, HGET, HDEL, HMSET, HMGET, HEXISTS,HGETALL,HLEN键值对集合,适合存储对象,支持字段操作。可存储重复字段。
列表LPUSH, RPUSH, LPOP, RPOP, LRANGE, LSET, LREM有序字符串集合,支持双向操作,适合实现消息队列,允许重复元素。
集合SADD, SREM, SMEMBERS, SISMEMBER无序唯一元素集合,不允许重复,支持集合运算,适合实现标签和用户兴趣。
有序集合ZADD, ZREM, ZRANGE带分数的有序集合,不允许重复,支持范围查询和排序,适合实现排行榜等。

二、GO连接redis

go-redis 支持 2 个最新的 go 版本且依赖Go modules,如果你还没有 go mod,你需要首先初始化:

go mod init github.com/my/repo

安装 go-redis/v9 (支持所有的 redis 版本):

go get github.com/redis/go-redis/v9

参考链接:GO REDIS快速入门
然后导包即可使用redis:import "github.com/redis/go-redis/v9"
GO链接redis分为以下几步:
1.配置链接信息

opts := redis.Options{Addr:     "localhost:6379", // Redis 服务器地址和端口Password: "",               // Redis 密码,默认为空DB:       0,                // Redis 数据库编号,默认为 0
}

2.创建客户端

rdb := redis.NewClient(&opts)

3.创建上下文

ctx := context.Background()

4.测试连接

_, err := rdb.Ping(ctx).Result()
if err != nil {fmt.Println("连接 Redis 失败!")return
}
fmt.Println("连接 Redis 成功!")

操作2-4都已被本人封装在一个函数中:

// 创建 Redis 客户端并返回客户端和上下文
func ConnectRedis(opts *redis.Options) (*redis.Client, context.Context, error) {// 创建 Redis 客户端rdb := redis.NewClient(opts)// 创建上下文ctx := context.Background()// 测试连接_, err := rdb.Ping(ctx).Result()if err != nil {fmt.Println("连接 Redis 失败!")return nil, nil, err}fmt.Println("连接 Redis 成功!")return rdb, ctx, nil
}

本人已在自定义包中定义此函数,这样,用户无需每次手动测试链接。自定义包已部署在gitee上,读者可通过go get+本人的项目地址获取,项目地址:my_gopkg。使用前建议阅读README。

三、GO操作redis

go-redis封装的函数名和redis语句是一样的,传参除了传入上下文变量也是一样的,只是调用函数时多了Err()和Result()。Result()用于获取 Redis 命令的返回值。Err()用于获取命令执行的错误信息。
数据类型以哈希表为例,GO链接,操作redis的完整代码如下:

package mainimport ("context""fmt""time""github.com/redis/go-redis/v9"
)// ConnectRedis 创建 Redis 客户端并返回客户端和上下文
func ConnectRedis(opts *redis.Options) (*redis.Client, context.Context, error) {// 创建 Redis 客户端rdb := redis.NewClient(opts)// 创建上下文ctx := context.Background()// 测试连接_, err := rdb.Ping(ctx).Result()if err != nil {fmt.Println("连接 Redis 失败!")return nil, nil, err}fmt.Println("连接 Redis 成功!")return rdb, ctx, nil
}
func main() {// 配置链接信息opts := redis.Options{Addr:     "localhost:6379", // Redis 服务器地址和端口Password: "",               // Redis 密码,默认为空DB:       0,                // Redis 数据库编号,默认为 0}rdb, ctx, err := ConnectRedis(&opts)if err != nil {return}// 创建用户err = rdb.HSet(ctx, "myhash", "name", "张三", "age", 30).Err()if err != nil {fmt.Println("创建用户失败:", err)return}fmt.Println("用户创建成功")// 获取用户信息userInfo, err := rdb.HGetAll(ctx, "myhash").Result()if err != nil {fmt.Println("获取用户信息失败:", err)return}fmt.Println("用户信息:", userInfo)// 更新用户信息err = rdb.HSet(ctx, "myhash", "name", "李四", "age", 25).Err()if err != nil {fmt.Println("更新用户信息失败:", err)return}fmt.Println("用户信息更新成功")// 再次获取用户信息以查看更新效果updatedInfo, err := rdb.HGetAll(ctx, "myhash").Result()if err != nil {fmt.Println("获取更新后的用户信息失败:", err)return}fmt.Println("更新后的用户信息:", updatedInfo)// 设置键的过期时间为5秒err = rdb.Expire(ctx, "myhash", 5*time.Second).Err()if err != nil {fmt.Println("设置过期时间失败:", err)return}fmt.Println("设置过期时间成功")// 等待6秒time.Sleep(6 * time.Second)// 再次尝试获取哈希值(预期为空,因为键已过期)result, err := rdb.HGetAll(ctx, "myhash").Result()if err != nil {fmt.Println("获取用户信息失败:", err)return}if len(result) == 0 {fmt.Println("键已过期,无法获取用户信息")} else {fmt.Println("用户信息:", result)}// 删除用户信息err = rdb.Del(ctx, "myhash").Err()if err != nil {fmt.Println("删除用户信息失败:", err)return}fmt.Println("用户信息删除成功")
}
http://www.yayakq.cn/news/252478/

相关文章:

  • 网页美工设计师就业能力要求保定百度推广优化排名
  • 网站建设公司郑州wordpress博客密码
  • 站长统计app网站网站支付页面设计
  • 那家建网站宝盒好用山东省建设厅制一网站
  • 学校 html5 网站 案例网站建设购买模板
  • 电子政务与网站建设的经验网线制作的步骤
  • 网页制作素材网站河南造价信息网官网
  • 广安网站建设推荐全国大型网站建设
  • 全国分站seo四川旅游seo整站优化
  • 成都网站关键词推广德州网站建设
  • 温州网站建设怎么样网络运营者开展经营和服务活动必须遵守法律行政法规
  • 男女做那个什么的视频网站点击网站出现微信二维码的链接怎么做
  • 宁波梅山建设局网站有口碑的宜昌网站建设
  • 安溪学校网站建设网站怎么做实名认证
  • 深圳龙华做网站网站建设一条龙全包
  • 通信建设资质管理信息系统网站网站建设最新教程视频教程
  • 网站死链接海北高端网站建设哪家好
  • 网站建设企业开源dede单本小说网站源码
  • 网站怎么做电脑系统常州网站制作培训
  • 城市建设法规考试网站项目合作网站
  • 服务器搭建网站视频教程现在哪个公司家庭网络好用
  • 字体设计灵感网站服装手机商城网站建设
  • 淮南市城乡建设局网站临平做网站电话
  • 制作高端网站公司排名做中介平台网站 需要什么
  • 西安做百度推广网站 怎样备案wordpress 响应式模块
  • 怎样建设一个英语网站贵阳网站建设设计公司哪家好
  • 做论坛和做网站有什么区别广告建设网站建设
  • 怎么做淘宝客网站赚钱吗顺德品牌网站建设优惠
  • 免费域名网站建设徐州市水利工程建设有限公司网站
  • pascal建设网站印象笔记 wordpress