Go语言之进阶篇操作redis
1、windows安装redis
软件包下载地址:
https://github.com/MicrosoftArchive/redis/releases

1.1、安装--->下一步--->到完成。
1.2、设置redis密码。
C:\Program Files\Redis
#编辑这个文件:
redis.windows-service.conf
找到含有requirepass字样的地方,追加一行,输入requirepass 123456
备注 :做实验我们就不设置密码。
点击“开始”>右击“计算机”>选择“管理”。在左侧栏中依次找到并点击“计算机管理(本地)”>服务和应用程序>服务。再在右侧找到Redis名称的服务,重新启动服务。

最后来测试一下Redis是否正常提供服务。进入Redis的目录,cd C:\Program Files\Redis。输入redis-cli并回车。(redis-cli是客户端程序)如图正常提示进入,并显示正确端口号,则表示服务已经启动。
C:\Users\560140>cd "c:\Program Files\Redis" c:\Program Files\Redis>redis-cli
127.0.0.1:6379> auth 123456 #输入密码
OK
127.0.0.1:6379>
2、安装redis驱动
go get github.com/monnand/goredis
3、源码参考:
https://github.com/monnand/goredis/blob/master/redis.go
4、操作redis
示例:
package main import (
"fmt" "github.com/monnand/goredis"
) func main() {
var client goredis.Client
client.Addr = "127.0.0.1:6379"
err := client.Set("test", []byte("hello beifeng"))
if err != nil {
panic(err)
} res, err := client.Get("test")
if err != nil {
panic(err)
} fmt.Println(string(res)) //test hmset
f := make(map[string]interface{})
f["name"] = "nulige"
f["age"] = "30"
f["sex"] = "male" err = client.Hmset("test_hash", f)
if err != nil {
panic(err)
} //test zset
_, err = client.Zadd("test_zset", []byte("beifeng"), 100)
if err != nil {
panic(err)
}
}
执行结果:
#启动redis命令行
C:\Users\560140>cd "c:\Program Files\Redis"
c:\Program Files\Redis>redis-cli #test hmset
127.0.0.1:6379> get test
"hello beifeng" 127.0.0.1:6379> type test_hash
hash #test zset
127.0.0.1:6379> get test_zset
(error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> hgetall test_hash
1) "name"
2) "nulige"
3) "age"
4) "30"
5) "sex"
6) "male" #查看类型
127.0.0.1:6379> type test_zse
none 127.0.0.1:6379> zrange test_zset 0 -1
1) "beifeng"
127.0.0.1:6379> zrange test_zset 0 -1 withscores
1) "beifeng"
2) "100"
Go语言之进阶篇操作redis的更多相关文章
- go语言之行--golang操作redis、mysql大全
一.redis 简介 redis(REmote DIctionary Server)是一个由Salvatore Sanfilippo写key-value存储系统,它由C语言编写.遵守BSD协议.支持网 ...
- go语言之进阶篇接口转换
1.go语音之进阶篇 示例: package main import "fmt" type Humaner interface { //子集 sayhi() } type Pers ...
- go语言之进阶篇文件常用操作接口介绍和使用
一.文件常用操作接口介绍 1.创建文件 法1: 推荐用法 func Create(name string) (file *File, err Error) 根据提供的文件名创建新的文件,返回一个文件对 ...
- go语言之进阶篇字符串操作常用函数介绍
下面这些函数来自于strings包,这里介绍一些我平常经常用到的函数,更详细的请参考官方的文档. 一.字符串操作常用函数介绍 1.Contains func Contains(s, substr st ...
- go语言之进阶篇成员操作
1.成员操作 示例: package main import "fmt" type Person struct { name string //名字 sex byte //性别, ...
- go语言之进阶篇通过select实现斐波那契数列
一.select作用 Go里面提供了一个关键字select,通过select可以监听channel上的数据流动. select的用法与switch语言非常类似,由select开始一个新的选择块,每个选 ...
- go语言之进阶篇正则表达式
正则表达式是一种进行模式匹配和文本操纵的复杂而又强大的工具.虽然正则表达式比纯粹的文本匹配效率低,但是它却更灵活.按照它的语法规则,随需构造出的匹配模式就能够从原始文本中筛选出几乎任何你想要得到的字符 ...
- Go语言之进阶篇mysql增 删 改 查
一.mysql操作基本语法 1.创建名称nulige的数据库 CREATE DATABASE nulige DEFAULT CHARSET utf8 COLLATE utf8_general_ci; ...
- Go语言之进阶篇获取文件属性
1.获取文件属性 示例: get_file_attribute.go package main import ( "fmt" "os" ) func main( ...
随机推荐
- sublime插件CSS转rem配置
{ "px_to_rem": 40, //px转rem的单位比例,默认为40 "max_rem_fraction_length": 6, //px转rem的小数 ...
- 小成就之解决调用spring中FileSystemXmlApplicationContext路径问题
此文写下调用spring过程中遇到的一个问题!或许对于入行的人一看觉得我很傻逼吧,这问题谁都会了!但我觉得对于新手(自已)来说,算是一个好思路与好办法! 问题: 对于 test_aa ta = (te ...
- 【python学习-1】python环境设置与开发
开始学习python,打算把学习过程都记下来. 下载python,虽然推荐官网,但是感觉官网上面下载python太慢,所以我最后是在csdn上面下载的python版本(3.2.4 windows 64 ...
- WEP保护帧移除工具airdecloak-ng
WEP保护帧移除工具airdecloak-ng 为了防止WEP加密数据被破解,WIPS(无线入侵防御系统)会发送WEP保护帧.攻击者抓取WEP数据包时,也会获取这一类包,导致破解失败.aircra ...
- BZOJ3459 : Bomb
二分答案,转化成判定所有科学家能否在lim时间内走到安全的地方 考虑网络流,对于每个非叶子节点,S向它连边,容量为该点科学家的人数 对于每个叶子节点,向T连边,容量为该点的容量 对于每个非叶子节点x, ...
- 【Codechef FRBSUM】【FJOI2016】【BZOJ4299】【BZOJ 4408】 可持久化线段树
4408: [Fjoi 2016]神秘数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 475 Solved: 287[Submit][Status ...
- Kernel 4.9的BBR拥塞控制算法与锐速
重要的事情说三遍! BBR并不能突破带宽限制!!! BBR并不能突破带宽限制!!! BBR并不能突破带宽限制!!! 它的功能如下: 1.在高丢包率与低速率的网络中提升传输效果,充分利用带宽. 2.降低 ...
- RabbitMQ 延时消息队列
消息延时在日常随处可见: 1.订单创建10min之后不发起支付,自动取消. 2.30min定时推送一次邮件信息. 最常用到方式后台定时任务轮训,量小的时候可以使用,量大会出现数据读取会性能问题.Rab ...
- Android四种Activity的加载模式
建议首先阅读下面两篇文章,这样才可以更好的理解Activity的加载模式: Android的进程,线程模型 http://www.cnblogs.com/ghj1976/archive/2011/04 ...
- 【防火墙技术连载11】强叔侃墙 攻击防范篇 流量型攻击之UDP Flood及防御
http://support.huawei.com/huaweiconnect/enterprise/thread-214141.html