0%

map记了一下,还有个sync.Map,其中对 atomic 包和锁的配合使用,很有代表性
go版本为1.18.1

阅读全文 »

重温 go map 数据结构相关设计时,顿觉老矣,很多内容都模糊不清了,写一遍加深印象

版本:go 1.18.1

阅读全文 »

新项目开发决定使用proto来定义api,服务同时提供grpc/http接口
然后通过proto生成swagger文件,导入到yapi中实现自动接口维护
由于之前项目未应用,于是写了个demo以作内部演示用,主要是介绍http rest接口的定义与请求的传参和 message 定义之间的关联

阅读全文 »

需求是多个后端服务提供grpc接口及proto文件,之前上层服务各自调用,分散且难以管理
所以选择重构,后端服务据说没有人手,不会做任何改动,但目标是实现故障转移、服务注册发现、负载均衡、任务泄露检测等
其中就涉及要复用proto的要求,本来简单的事由于掉进前人坑中,也只好记录下,增加点教训

阅读全文 »

最近重构一些老项目,为此实现了一个基于etcd的grpc服务注册、发现及负载均衡的中间件
服务注册嘛,无论docker还是k8s部署,都需要服务在监听到系统信号 SIGTERM ,实现标准的优雅停机,摘除注册
之前的服务启动命令是一个脚本,看似实现了,但没有完全实现

阅读全文 »