-
[置顶]软件接口设计怎么做?前后端分离软件接口设计思路
本文关于软件接口设计怎么做?前后端分离软件接口设计思路。好的系统架构离不开好的接口设计,因此,真正懂接口设计的人往往是软件设计队伍中的稀缺型人才。为什么在接口制定标准中说:一流的企业做标准,二流的企业...
-
[置顶]接口管理如何做?接口实现版本管理的意义和最佳方法
本文关于接口管理如何做?接口实现版本管理的意义和最佳方法。API版本管理的重要性不言而喻,对于API的设计者和使用者而言,版本管理都有着非常重要的意义。下面会从WEB API 版本管理的角度提供几种常...
-
[置顶]实现API管理系统的关键
下面将通过几个关键词的形式说明API管理的重要性和未来的实现方式。1.生命周期管理在整个API生命周期中更深入地集成所有工具将进一步提高生命周期循环的速度,而且更重要的是提供满足消费者需求的API。这...
-
Go 1.14中值得关注的几个变化(go的过去式)
可能是得益于2020年2月26日Go 1.14的发布,在2020年3月份的TIOBE编程语言排行榜上,Go重新进入TOP 10,而去年同期Go仅排行在第18位。虽然Go语言以及其他主流语言在榜单上的“...
-
Go官方的限流器 time/rate 如何使用(一)(go 限流)
本主题为系列文章,分上下两篇。本文主要介绍time/rate的具体使用方法,下一篇文章将会着重介绍其内部实现原理。限流器是后台服务中的非常重要的组件,可以用来限制请求速率,保护服务,以免服务过载。限流...
-
优雅地关闭或重启 go web 项目(重启以保持最新状态怎么关闭)
我们编写的Web项目部署之后,经常会因为需要进行配置变更或功能迭代而重启服务,单纯的kill -9 pid的方式会强制关闭进程,这样就会导致服务端当前正在处理的请求失败,那有没有更优雅的方式来实现关机...
-
几个信道死锁经典错误案例详解
刚接触 Go 语言的信道的时候,经常会遇到死锁的错误,而导致这个错误的原因有很多种,这里整理了几种我初学时见到的。fatal error: all goroutines are asleep - de...
-
go的数据库模型生成器(go数据库框架)
为什么写这个生成器最近要写GO项目,然后发现orm着实难用,一个model要去手动写,更坑的是,`号里面的内容,没有自动打印。天好冷吗,手好抖,南方的冬天,你懂的。像JAVA、PHP等语言,都有成熟的...
-
如何用golang实现一个定时器任务队列
golang中定时器golang中提供了2种定时器timer和ticker(如果JS很熟悉的话应该会很了解),分别是一次性定时器和重复任务定时器。一般用法:func main() { inpu...
-
Go 中的 SetFinalizer 有什么用?怎么实现的?(公公与儿媳)
这篇文章基于 Go-1.12 版本Go runtime 提供了一种允许开发者将一个函数与一个变量绑定的方法 runtime.SetFinalizer,被绑定的变量从它无法被访问时就被垃圾回收器视为待回...
-
八个字节的 UDP 如何传输数据(八个字节的数据类型)
UDP 与 TCP 两种传输协议是 IP 协议簇的核心成员,1980 年发布的 RFC 768 定义了 UDP 协议[^1],我们可以通过它在多个计算机连接构成的网络中传递数据。常见的 DNS 协议就...
-
项目使用了 ORM,具体执行的是什么 SQL 语句总是很迷?xorm1.0 解决了(项目使用了mysql,能上市吗)
昨天有人问,能不能讲讲 xorm,于是今天先来一篇简单的。自定义上下文 SQL Log 需求有哪些可以使用自己的封装日志库,拓展日志输出问题,可以输出到 es(elasticsearch)等,方便日志...
-
Go 每日一库之 validator:Go最优秀的验证库
简介今天我们来介绍一个非常实用的库——validator。validator用于对数据进行校验。在 Web 开发中,对用户传过来的数据我们都需要进行严格校验,防止用户的恶意请求。例如日期格式,用户年龄...
