ItGo.me - 专注IT技术分享

首页 > Redis > Go语言操作Redis

Go语言操作Redis

时间:2016-08-28来源:网友分享 点击:

       Redis的Go语言驱动已经很成熟了,用redigo弄了个例子。

package main//Redis测试//author:Xiong Chuan Liang//date:2015-3-5import ("fmt""time""log"";)func main(){fmt.Println("Redis:")conn,err := redisConn("","","6");if err != nil {log.Fatal("Error: ", err)}test(conn)}func test(conn *RedisConn) {conn.Do("SET","xxx",1)if xxx,err :=redis.Int(conn.Do("GET","xxx")); err == nil {fmt.Println("xxx:",xxx)}conn.FlushClose()}////////////////////////////////////////////////////////////////type RedisConn struct {dbid stringredis.Conn}func (r *RedisConn)FlushClose() error {if r.dbid != "" {if _, err := r.Conn.Do("SELECT", r.dbid);err != nil {return nil}}if _, err := r.Conn.Do("FLUSHDB");err != nil {return err}return r.Conn.Close()}func (r *RedisConn)Close() error {return r.Conn.Close()}func redisConn(host,password,db string) (*RedisConn, error) {if host == "" {host =  ":6379"}//conn, err := redis.Dial( "tcp", host)conn , err := redis.DialTimeout("tcp", host, 0, 1*time.Second, 1*time.Second)if err != nil {return nil, err}if password != "" {if _, err := conn.Do("AUTH", password); err != nil {conn.Close()return nil, err}}if db != "" {if _, err := conn.Do("SELECT", db);err != nil {conn.Close()return nil, err}}return &RedisConn{dbid:db,Conn: conn}, nil}

 可以看到使用非常方便。


MAIL:xcl_168@

BLOG:


Go语言操作Redis

Go语言操作Redis  讨论


Java操作redis的工具类

0通过jedispool操作redis的工具类,通过大量测试和高并发测试。 在使用jedispool 的时候一定要注意两点 1. 在获取jedisPool和jedis的时候加上线程同步,保证不要创建过多的jedispool 和 jedis 2.用完Jedis实...

基于 ruby/redis 的推荐引擎:recommendify

recommendify 是基于 ruby/redis 的推荐引擎 (协同过滤)。 # Our similarity matrix, we calculate the similarity via co-concurrence# of products in "orders" using the jaccard similarity measure.class MyRecommender Recommendify::Base# store on...

Pushlet:一个开源的 Comet 框架

Pushlet是通过改进 框架,添加支持多字符集和通过redis做后端数据库来做集群.Pushlet 使用了观察者模型:客户端发送请求,订阅感兴趣的事件;服务器端为每个客户端分配一个会话 ID 作为标记,...

Redis的Go语言驱动已经很成熟了,用redigo弄了个例子。 package main//Redis测试//author:Xiong Chuan Liang//date:2015-3-5import (fmttimelog;)func main(){fmt.Println(Redis:)conn,err := redisConn(,,6);if err != nil {log.Fatal(Error: , e
------分隔线----------------------------