随笔分类 - golang
mysql_example
摘要:package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) var DB *sql.DB func initDb() error { var err error dsn := "root:root@tcp(localhost:3306)/golang_db" DB, err = sql.Open("
阅读全文
windows 下 解决 go get 或 dep init 更新不了问题
摘要:首先你安装了Shadowsocks 并设置相应的代理,能够访问google等境外网站。 打开dos命令行窗口执行 如下图 这样你就能执行go get 或dep等命令,下载被墙的包了。以上方法为临时方法,重启电脑就会失效,如果想永久生效需要更改环境变量。右击我的电脑–>属性–>高级–>环境变量–>系统
阅读全文
golang反射
摘要:package main import ( "fmt" "reflect" ) func reflect_example(a interface{}) { t := reflect.TypeOf(a) fmt.Printf("type of a is:%v\n", t) k := t.Kind()
阅读全文
golang中使用etcd
摘要:get with用法 读取前缀 Delete 删除多个key delResp,err = kv.Delete(context.TODO(),"/cron/jobs",clientv3.WithPrefix()) 续租: 永不过期的租约 package main import ( "github.co
阅读全文
etcd使用
摘要:下载: https://github.com/etcd-io/etcd/releases/tag/v3.3.13 tar -zxvf etcd-v3.3.13-linux-amd64.tar.gz 启动: ./etcd --listen-client-urls 'http://0.0.0.0:237
阅读全文
etcd
摘要:1,将数据存储在集群中的高可用的K-V存储 2,允许应用实时监听存储中的K-V变化 3,能够容忍单点故障 能够应对网络分区 原理: 上图5个节点的集群 2N+1 5个节点的集群大多数是N+1 3个节点 只要有3个节点能被赋值,那么这个日志就能被提交,不会被丢失 1-7日志是成功被提交的日志,8是失败
阅读全文
执行脚本命令
摘要:GOROOT=D:\go #gosetup GOPATH=D:\gospace;C:\Users\Administrator\go #gosetup D:\go\bin\go.exe build -i -o C:\Users\Administrator\AppData\Local\Temp\___g
阅读全文
golang 上下文context用法详解
摘要:背景 在go服务器中,对于每个请求的request都是在单独的goroutine中进行的,处理一个request也可能设计多个goroutine之间的交互, 使用context可以使开发者方便的在这些goroutine里传递request相关的数据、取消goroutine的signal或截止日期。
阅读全文
httpserver实现简单的上下文
摘要:package main import ( "net/http" "com.jtthink.net/myhttpserver/core" ) type MyHandler struct { } func(*MyHandler) ServeHTTP(writer http.ResponseWriter
阅读全文
httpserver
摘要:快速创建一个httpserver 路由 设置cookie 注销 判断登录 package main import ( "net/http" "time" ) type MyHandler struct { } func(*MyHandler) ServeHTTP(writer http.Respon
阅读全文
多协成利用互斥锁按顺序执行读取文件
摘要:text文本 1、动态规划比递归快-LeetCode91-解码方法2、Linux内存描述之内存节点node--Linux内存管理3、笔试题—字符串常见的算法题集锦4、机器学习系列(14)_SVM碎碎念part2:SVM中的向量与空间距离5、大数运算(7)——大数阶乘(求阶乘)6、经典设计模式实战演练
阅读全文
channel补充
摘要:无缓冲管道 : 指在接收前没有能力保存任何值的通道,这种类型通道要求发送gorouutine和接收goroutine同时准备好,才能完成发送和接收操作。如果两个goroutine没有同时准备好, 通道会导致先执行发送或者接收的goroutine阻塞等待,这种对通道进行发送和接收的交互行为本身就是同步
阅读全文
goroutine channel
摘要:package main import ( "fmt" _ "time" "sync" ) // 需求:现在要计算 1-200 的各个数的阶乘,并且把各个数的阶乘放入到map中。 // 最后显示出来。要求使用goroutine完成 // 思路 // 1. 编写一个函数,来计算各个数的阶乘,并放入到
阅读全文
浙公网安备 33010602011771号