随笔分类 - golang
摘要:ipc 网络摄像机 IP camera nvr 网络硬盘摄像机 nvr network video recorder 区别 ipc 直接获取流 ipc的设备IP和port ipc和ipc 直接连接的话 流通过nvr做转发 地址应该nvr的ip 和 port
阅读全文
摘要:前言 The selected directory is not a valid home for Go SDK 出现这个错误的原因是 idea 的 Go-plugin 插件,和 Go 的sdk版本不匹配; #####解决方法 在 golang 安装路径下寻找:go1.17\src\runtime\
阅读全文
摘要:不在数据库中的数据则新增 [增量] all := []string{"a", "b", "c", "d"} update := []string{"a", "b", "c", "d", "f"} add:= []string{"f"} 存在数据库中 不在请求的数据中的数据 all := []stri
阅读全文
摘要:golang 东八区时间字符串比较先转换为时间戳 timezone := time.FixedZone("CST", 8*3600) start, end := "2022-06-09 21:17:47", "2022-06-19 10:55:34" startTime, err := time.P
阅读全文
摘要:在golang 保存时间字符串转为时间格式后保存多出8小时 初步排查可能mysql数据库服务器时间问题 show variables like'%time_zone'; // outpot Variable_name`, `Value` 'system_time_zone', 'CST' 'time
阅读全文
摘要:golang微服务组件 gokit 服务三层架构解析 Transport 协议平面 Endpoint 控制平面 Service 数据平面 脚手架 kitcli go get -u google.golang.org/grpc go get -u github.com/golang/protobuf/
阅读全文
摘要:使用context.Context 上下文去全局数据 metadata type MD map[string][]string //第一种方式 md := metadata.New(map[string]string{"key1": "val1", "key2": "val2"}) //第二种方式
阅读全文
摘要:前置安装golang -u get & install go get -u github.com/golang/protobuf/proto go get -u github.com/golang/protobuf/protoc-gen-go 目录结构 root -- emergency -- te
阅读全文
摘要:提交到服务器的的json中的某个字段是json字符串 需要提交的json 字符串 var aa = {"id":35,"method":"call.setAdviseMedia","params":{"nid":"83605254241","medias":[{"operator":5,"strea
阅读全文
摘要:在排行榜中实现分数和时间排序 分数相同则按照时间排序 需求分析 redis中zset的long为int64 转为十进制是19位 时间戳10位 毫秒时间戳13位 高位存分数7位 十进制 7位 8字节中拆分 最高位不可用 还剩43位 高22位存分数 低41位存时间戳 golang 代码 package
阅读全文
摘要:一般场景是重试几次后失败 package main import ( "fmt" "time" ) func main() { retry(func() bool { return false }, []int{1, 3, 5}) } func retry(f func() bool, interv
阅读全文
摘要:发布消息的时候 通道被关闭 提前将channel 关闭 生产和消费则配置不一致 交换机 队列 绑定 三者对不上导致 无法发布
阅读全文
摘要:使用注意订阅 proudcut package main import ( "github.com/gofiber/fiber/v2" "github.com/gofiber/fiber/v2/middleware/logger" "github.com/streadway/amqp" "log"
阅读全文
摘要:####### 使用ws 订阅人员变更信息 package main import ( "fmt" "github.com/gorilla/websocket" "log" "os" "os/signal" "time" ) func main() { // install signal inter
阅读全文
摘要:服务端代码 package main import ( "fmt" "net/http" "sync" "github.com/gorilla/websocket" ) var upgrader = websocket.Upgrader{ ReadBufferSize: 1024, WriteBuf
阅读全文
摘要:md5 两种方式摘要 直接sum 是长度为16的byte 转为16进制输出 data := []byte(str) has := md5.Sum(data) fmt.Println(fmt.Sprintf("%x", has) ) 生成一个hash 接口对象 将字符串写入 转为16进制输出 w :=
阅读全文
摘要:很多人认为 父 goroutine 结束后 子goroutine 一定会结束 结论只要main 不结束 goroutine 一定会运行 代码验证 package main import ( "fmt" "time" ) func main() { fmt.Println("main start")
阅读全文

浙公网安备 33010602011771号