随笔分类 - golang精进
摘要:本文通过图文并茂的方式,介绍使用kafka 手动消费分区的方式实现广播的效果,解决了百万级别长连接网关的消息路由问题,提升了整体系统性能和可用性。
阅读全文
摘要:介绍golang中3种场景的json方式,短平快,通俗易懂。
阅读全文
摘要:通熟易懂的解释优雅退出的原理,并介绍了在Linux下几种常见的场景和信号,最后分享了go中的最佳实践,可以把代码直接复用到项目中。
阅读全文
摘要:用metux lock for循环,在for循环中又 向带缓冲的Channel 写数据时,千万要小心死锁!
阅读全文
摘要:Cobra是一个用Go语言实现的命令行工具。并且现在正在被很多项目使用,例如:Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速的创建命令行工具,特别适合写测试脚本,各种服务的Admin CLI等。
阅读全文
摘要:效果 go里面没有try catch,比较类似的有panic() 和 recover()机制,但是代价太大了,他们的场景更多使用在“程序异常,无法继续往下执行了这种场景”,比如配置文件读取失败、初始化连接Mysql失败等等。 一般而言,我们更多的还是通过返回值来表示函数的处理结果,而不是粗暴的抛pa
阅读全文
摘要:ElasticSearch IK热词自动热更新原理与Golang实现
阅读全文
摘要:这是我参与8月更文挑战的第5天,活动详情查看:8月更文挑战 系列文章见: [第四天] GDB调试指南:C++中如何调试生产环境的程序? [第三天] IM敏感词算法原理和实现 [第二天] 现代IM架构研究笔记(一):瓜子IM和OpenIM [第一天] Golang中如何正确的使用sarama包操作Ka
阅读全文
摘要:Golang中如何正确的使用sarama包操作Kafka? 一、背景 在一些业务系统中,模块之间通过引入Kafka解藕,拿IM举例(图来源): 用户A给B发送消息,msg_gateway收到消息后,投递消息到Kafka后就给A返回发送成功。这个时候,其实还没有持久化到mysql中,虽然最终会保持一致
阅读全文