- 博客(8)
- 收藏
- 关注
原创 Redis 特性,5种value类型和应用场景
特点内存单线程KVIO多路复用器《-》redisredis只是通过多路复用器获取到IO事件,程序自己要读写IO获取IO事件-》计算-》R/W都是串行的(因为是单线程,一次只能处理一个线程)——》IO的输出其实是有间隔的输出是有间隔的:比较memcache和redismemcache:json存在string里客户端请求数据的时候,只能请求到所有的json数据redis:会建立本地方法,存在list客户端请求的时候,只需要告诉服务器需要哪个数据index,不用操作全量单线
2020-05-23 22:14:22 1093
原创 Go Mongodb redis
Mongodb术语数据库常用命令show dbs;:查看数据库> show dbs;admin 0.000GBconfig 0.000GBlocal 0.000GBtest 0.000GBuse q1mi;:切换到指定数据库,如果不存在该数据库就创建。use q1mi;:切换到指定数据库,如果不存在该数据库就创建。> use q1mi;switched to db q1midb;:显示当前所在数据库。db;:显示当前所在数据库。> db;
2020-05-21 11:47:33 259
原创 使用docker安装redis
因为redis官方不支持windows,所以为了使用新版本的redis,只能用docker.1.下载docker参考此教程https://www.runoob.com/docker/windows-docker-install.html2.找到要下载的redis版本(这里用的6)https://hub.docker.com/_/redis?tab=tags3.随便打开个cmd运行上面复制的命令docker images3.找到6对应的image iddocker run --n
2020-05-13 16:00:37 413
原创 Go 错误处理与测试 defer-panic-recover
Go 是怎么处理普通错误的呢?通过在函数和方法中返回错误对象作为它们的唯一或最后一个返回值——如果返回 nil,则没有错误发生——并且主调(calling)函数总是应该检查收到的错误。错误处理错误接口类型type error interface { Error() string}定义错误err := errors.New("需要显示的信息")用 fmt 创建错误对象fmt.Errorf("math: square root of negative number %g", f)
2020-05-12 18:00:35 287
原创 Go 网路编程
tcpservice.go// Simple multi-thread/multi-core TCP server.package mainimport ( "flag" "fmt" "net" "syscall")const maxRead = 25func main() { flag.Parse() if flag.NArg() != 2 { panic("usage: host port") } hostAndPort := fmt.Sprintf("%s:%s
2020-05-09 18:25:09 175
原创 Go 读写数据
读取控制台输入1. fmt包:Scan 和 Sscan 开头的函数var ( firstName, lastName, s string i int f float32 input = "56.12 / 5212 / Go" format = "%f / %d / %s")func main() { fmt.Println("Please enter y...
2020-05-09 10:32:07 388
原创 Go 协程(goroutine)与通道(channel)
协程package mainimport "time"func main() { go say("Hello World") // 没有下一行,则主线程都结束了协程还没打印完说不定 time.Sleep(time.Second * 1)}func say(s string) { println(s)}2.WaitGrouppackage mainimport ...
2020-05-08 19:51:45 495
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人