首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
玩转Golang
raining1127
创建于2021-09-21
订阅专栏
分享一些Golang的使用心得、基于channel的工具类等
等 6 人订阅
共12篇文章
创建于2021-09-21
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Golang实现SOAP客户端的经验总结
Golang实现SOAP客户端经验总结,推荐使用gowsdl生成模板代码,然后再二次开发。 还分享了hotfix第三方包的小技巧。
玩转Golang的channel,二百行代码实现PubSub模式
一步步拆解,使用的golang的channel,二百行代码实现PubSub模式,并最终实现生产级工具类EventBus
下次想在Golang中写个并发处理,就用这个模板,准没错!
想用协程池,就要引用一个包? 你out了,这里分享一个拿去可用的协程池模板! 只需copy/paste/tweak一下输入、输出类型即可满足日常开发需求。
手把手教你写一个完美的Golang Dockerfile
话说不说,直接上拿走可用的Dockerfile。 首先,这个dockerfile分为builder和final两部分。 builder选择了golang:1.13.5-alpine3.10作为编译的基础镜像,相比于golang:1.13, 一方面是因为它体积更小,另一方面是我发…
如何把golang的Channel玩出async和await的feel
如何优雅的同步化异步代码,一直以来都是各大编程语言致力于优化的点,记得最早是C# 5.0加入了async/await来简化TPL的多线程模型,后来Javascript的Promise也吸取这一语法糖,在ES 6中也加入了async和await. 但这个代码看起来还是有点丑,而且…
一道困扰了我好久的goroutine调度面试题
程序执行结果疑问?为什么先输出我搜索了好久,真是百思不得其(jie),大神,你怎么看?原因最后还阅读大神的文章,发现了原因由一个问题引发的goroutine相关源码的探究简单来说,就是如果当前的G的调
如何用Golang的channel实现消息的批量处理
话说,有这样一个场景,就是客户送不断发送消息,需要服务端异步处理。 一个一个的处理未免有些浪费资源,更好的方法是批量处理。 当消息量特别大时,使用kafka之类的message queue自然是首选,但更多的时候,我们想用更加轻量的方案来解决这个问题。 基于这样的需求,我快速的…
如何把Golang的channel用的如nodejs的stream一样丝滑
如果让我和别人说说Golang有什么特点,我首先想到不一定是goroutine,但一定会是channel。 因为Channel的存在,是让Goroutine威力加成的利器。 假如说你需要对100次请求,做两种比较耗时的操作,然后再统计加权结果,还需要尽可能的并发来提高性能。示例…
记一次golang程序CPU高的排查过程
事情的起因是某天CTO突然和我说,生产环境的程序CPU有点高,关键是现在也没什么负载,同样的代码在开发环境上CPU就低的多了。 不用细说,那一定是有什么地方出问题了。 ,打趣说没准系统负载高了,这个问题就没了。因为原文中写到: 然后就把这个锅就“甩”给我了,让我研究一下。毕竟开…
解析一道区块链行业前三公司的笔试题
年初找工作时,面过一家自称区块链行业前三的公司(事实上也差不多),他们笔试题蛮有意思的,时隔半年,估计他们也更新题库了,就拿出来和大家分享一下。 Sandy是一个制作地图的探险家。她从点(0,0)开始探索,每次可以向左、向右、向上或者向下移动一点。例如,如果Sandy站在(x,…
Gorm的使用心得和一些常用扩展(二)
在上一篇文章,我分享了自己在新增和更新的场景下,自己使用gorm的一些心得和扩展。本文,我将分享一些在查询的方面的心得。 在日常使用中,单表查询占据了多半的场景,把这部分的代码按照查询范围做一些封装,可以大大减少冗余的代码。 这段值得说明的就是对查询不到数据时的处理,gorm是…
Gorm的使用心得和一些常用扩展(一)
Gorm是golang的一个orm框架,它提供了对数据库操作的封装,使用起来相当便利。 但在项目开发中,代码写的多了,还是发现在它之上还是有再次封装的空间,比如说添加错误日志、或者是一些使用频率非常高的对单个表的条件查询、分页查询、数据更新等。再则是,关于相同的功能操作,gor…