golang笔记
记录自己在业务过程中写的一些常用函数
烤乳鸽好好吃啊
菜鸡
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
获取本机内网ip
获取本机内网ip func GetLocalIP() (string, error) { info, err := net.InterfaceAddrs() if err != nil { return "", err } for _,addr := range info{ if ipnet, ok := addr.(*net.IPNet); ok && !ipnet.IP.IsLoopback() { if ipnet.IP.To4() != nil { re原创 2022-01-24 11:23:15 · 547 阅读 · 0 评论 -
golang File.Seek和File.Truncate
场景 在实际业务中这样一个需求,部署在某台机器上的程序,维护有一个id,这个id在程序内部每次收到请求时会 + 1,当程序崩溃重启时需要知道重启前的这个id值,这样当重启时就知道id应该取什么初始值了。这很明显是一个读少写多的场景。想到的方法有两种,一个是利用redis进行缓存,因为只需要维护一个id,并不需要很大的内存;一个是本地缓存,一个是按照文件进行维护,一个是按照共享内存维护。 起初使用了redis维护,想着方便。但是在测试中发现,会出现一些dail timeout的情况,想着并不稳妥,所以决定本地原创 2022-01-18 17:48:35 · 2604 阅读 · 0 评论
分享