go语言的魔幻旅程33-go整合redis

583 阅读1分钟

不登高山,不知天之高也;不临深溪,不知地之厚也

山不在高,有仙则名;水不在深,有龙则灵,老话虽如此,奈何现实生活却南辕北辙。不管是工作还是学习,如果一味的停留在舒适区,不去主动适应具有挑战性的环境,长此以往,随着时间的推移,恐怕个人的能力会不断的退化。说到这里就不得不说明下为什么现在市面上有的公司虽然技术早已经脱离主流技术好久了,但是却依然不思图变,主要原因恐怕有下面的几点,一则是相关的领导技术停留在原地,不主动接触新的技术,时间一长,主流技术完全陌生,倘若贸然上新技术可能出了问题都不知道怎么解决,这样的情形下团队的技术帐日积月累最终成为后来者口中的屎山。

go整合redis

package main

import (
	"context"
	"fmt"
	"github.com/go-redis/redis"
)

/*依赖的redis库:go get github.com/go-redis/redis*/

var ctx = context.Background()


func main() {

	rdb := redis.NewClient(&redis.Options{
		Addr:     "localhost:6379",
		Password: "", // no password set
		DB:       0,  // use default DB
	})

	//redis的键的set方法
	err := rdb.Set(ctx, "test", "001", 0).Err()
	if err != nil {
		panic(err)
	}

	//redis键的get方法
	val, err := rdb.Get(ctx, "test").Result()
	if err != nil {
		panic(err)
	}
	fmt.Println("key", val)


	//redis的del方法
	rdb.Del(ctx, "key")


	pong, err := rdb.Ping(ctx).Result()
	if err != nil {
		panic(err)
	}
	fmt.Println(pong)


	//检查key是否存在
	v, _ := rdb.Exists(ctx, "test").Result()
	fmt.Println(v)
}

小结

go整合redis相关的内容讲解的非常的简单,后续可能根据情况补充相关的api利用案例,希望大家能掌握go运用redis的方法。