go master
文章平均质量分 62
ljh7670
这个作者很懒,什么都没留下…
展开
-
go redis使用可重入锁支持选主
为了保证稳定性,后端会部署多实例,在读的场景下其实是不需要选主的。但是也有需要单实例运行的人文,这就需要选主。原创 2022-10-02 17:37:08 · 647 阅读 · 0 评论 -
go redis lua实现分布式令牌桶算法
团队接了个根据告警的进行处理的需求,需要限制这个处理的速度,比如说一个小时只能最多处理三个,防止在晚上出现大量不可控变更影响。令牌桶算法原理可以参照,k8s限速队列、令牌桶原理可以参照。原创 2022-10-02 01:36:35 · 666 阅读 · 0 评论 -
Go xorm 插入多条数据无法生成自增id
使用xorm insert功能时,只插入一个对象时,要是声明了id xorm属性newObject id为空时就能自动更改为对应id。但是单次插入多个object则不会不会更改对应id,id保持为0。这样在写入时记录就会存在问题。......原创 2022-08-28 11:29:55 · 1344 阅读 · 0 评论 -
go-xorm如何嵌入子查询
go xorm相对其他orm工具有则不俗的用户友好性以及稳定性。xorm用户使用指南缺少对子查询的描述,只有join的使用指南。原创 2022-08-28 08:06:11 · 838 阅读 · 0 评论 -
vscode下go无法识别基础工具,同时引发go get mkdir permission denied错误
go get时mkdir permission denied错误1.问题描述有可能之前vscode都是好好的突然间就工具就找不到,也有可能重新下载工具还出错,也有可能就算重新下载工具还用不了。分析1.直接差生原因vscode在使用go extension时,会查看$GOPATH/bin下面的基础开发工具是不是完备。如下图:一旦找不到相应的工具,vscode就会提示install。这是非常正常的现象,出现以上错误就是没有权限写进去文件夹。但,问题远没那么简单,gopath一般都不会要求很原创 2021-05-13 15:07:38 · 1676 阅读 · 0 评论 -
go get github默认版本问题
go获取最新的代码库go get是go开发者非常常用的命令,在gomodule模式下,go代码在pkg/mod进行了统一管理。当我们使用IDE时,尽量使用go get下载go程序。因为IDE,如vscode的代码跳转和解析都依赖gopath和go mod的代码,不使用go get命令,便需要开发者自已进行代码结构的创建,git clone并不会把父路径进行创建,也不会将代码自动放到go的代码有效路径上。作为开发者,这种程序管理的要求是应该遵守的。但是go get 比较奇怪的一点是,不会clone最新版本原创 2021-02-18 18:12:16 · 2663 阅读 · 0 评论 -
golang标准输入输出获取带有空格的字符串
golang获取带空格字符串的方法一般我都是使用fmt包中scan系列函数抓取字符串。但是今天写算法,写到shein一题要求统计字符串中空格,数字,大小写字母,然后统计数字降序,相同时字符大小升序的算法题。因此无论使用scan,scanf,scanln都无法满足要求,一遇到空格就直接返回。使用bufio.reader(os.Stdin).readString(“\n”)可以直接读出整行字符串。附上算法代码package mainimport ( "fmt")func sort(list []原创 2020-08-31 20:00:04 · 3905 阅读 · 0 评论 -
使用go swagger创建结构体里的map[string][]string值域
map[string][]string在swagger中表示的格式新增结构体字段描述 properties: ...... $fieldname: type: object additionalProperties: type: array items: type: string然后运行swagger generate,就能创建出value 为切片的map。 // Requ原创 2020-06-30 15:34:07 · 1662 阅读 · 0 评论 -
golint校验输出import cycle not allowed
golint校验输出import cycle not allowedgolint: analysis skipped: errors in package: [-: import cycle not allowed in test] 。其实都知道由于是由于程序import的时候形成了环,稍微修改一下package就好了(package xxx_test的语法真的一般般)。由于没有明确输出哪一个程序出错,最简单的方法就是一个一个文件夹地试。没有环引用的文件夹不会出现以上提醒。一般都是因为,自动生成的t原创 2020-06-23 11:14:07 · 870 阅读 · 0 评论