Rabbitmq实战golang实现

1. Rabbitmq 架构及原理

消息队列,又叫做消息中间件。是指用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息队列模型,可以在分布式环境下扩展进程的通信(维基百科)

[Read More]

Golang函数内联优化

内联优化背景:

最近使用 onec.Do 对应 sync 的 once.go 文件的源码,发现在最近一年内发生了不小的变动,而且这模式的变动在多处被以相同的方法进行了优化,就是函数内联优化。

[Read More]

Golang利用策略模式优化if…else和switch

都知道大量 if else 对代码维护和设计都及其不友好,即便是你换成 switch 也并不那么理想,这里推荐主要利用策略模式优化。

需求:比如有20个甚至更多的消息模板,每个模板ID 对应要操作都可能不一样,比如文案,参数计算等。如果一个一个去独立写对应函数然后if else继续条件流程调用显得格外鸡肋,那么请用策略模式优化吧。

[Read More]

Git上线tag管理规范设计

1. 如何用 git 打 tag

使用tag标签对重要版本进行标记

当根据项目设计完成所有功能之后,项目就可以进行线上部署了。

为了保留线上项目的历史版本,便于回滚到历史上任意一个上线版本,对于每次进行线上部署,需要使用tag进行管理。

[Read More]