我对golang来说相对较新,可以使用一些关于如何构建它的高级提示。我正在尝试构建一个 REST API:
用户将通过 POST 方法提供一个小的 JSON 有效负载
API 将用户的输入数据与存储为结构切片的引用数据集进行比较,并计算值
此值将返回给用户
每小时都会查询一个数据库,并将结构块数据集替换为另一个结构块数据集。基本上,这会刷新参考数据
我希望这个令人耳目一新的工作是异步的,这样它就不会减慢用户体验
我使用的是高浪的 Echo 框架(https://echo.labstack.com/)。这是我在类似戈兰的伪代码中的尝试。您将如何构建此 API 以每小时刷新数据异步?
为了澄清,我卡在上的部分是“在后台每小时查询一次数据库异步”位。我不确定如何做到这一点。
func main() {
e := echo.New()
e.POST("/", func(something) {
// This func queries the DB and saves reference dataset result as a slice of structs
dataset := refreshDB()
// Does some calculations on input JSON data and reference dataset
result := doCalcs(inputJSON, dataset)
// Prep response in neat JSON
responseForUser := prepOutput(result)
return responseForUser
})
}
茅侃侃
相关分类