苟利国家生死以,岂因祸福避趋之

Panda Home

pRESTd 试用笔记(三)——查询篇

发布于 # 聊聊技术
标签: # Go # PostgreSQL # pRESTd # RESTful API # 运维
pRESTd 试用笔记(三)——查询篇
Photo by Ali Bakhtiari on Unsplash

为了在体验上连贯有序,在阅读本篇之前,建议先阅读下列两篇笔记, pRESTd 试用笔记(一)——安装篇 pRESTd 试用笔记(二)——配置篇 在前面的文章中我们已经成功安装了 pRESTd 并根据具体使用需求调整了配置,是时候来探索一下 pRESTd 的数据查询功能了,简单起见,我在配置文件中关掉了 auth 功能(将 jwt.default 和 auth.enabled 置为 false )和缓存功能(将 cache.enabled 置为 false )。 简单查询 在这一部分中将说明如何通过 pRESTd 进行简单的增删查改功能。由于是通过 http 请求进行操作,所以数据库的增删查改也恰好分别对应了 http 请求的动作语义( POST , DELETE , GET , PUT )。 增 文档链接: https://docs.prestd.com/prestd/docs/api

pRESTd 试用笔记(二)——配置篇

发布于 # 聊聊技术
标签: # Go # PostgreSQL # pRESTd # RESTful API # 运维
pRESTd 试用笔记(二)——配置篇
Photo by Paul Hanaoka on Unsplash

在上一篇笔记中我们用最基本的配置在本地运行了 pRESTd ,然而官方文档提供了非常丰富的配置参数来满足不同用户的需求,在做部署的时候,按需调参是必不可少的步骤。虽然官方文档已经非常清晰明了,但我觉得有些常用配置还是值得单独拿出来提一句。 注:下文中每次配置文件的修改都需要重启 pRESTd 才能生效。 用户授权配置 用户授权访问的启用需要同时配置 JWT 和 AUTH 。 JWT 部署了 pRESTd 之后,在生产环境中,从安全的角度考虑,我们通常希望只允许有权限的人才能访问这些接口。我们可以在 pRESTd 的配置中启用 jwt ,要求所有的 http 请求都需要把授权令牌放在请求头中才可以访问,此时配置文件如下所示(本文所有配置文件的修改都基于这里的内容),将 jwt 部分的 default 改为了 true migrations = "./migrations" # debug

pRESTd 试用笔记(一)——安装篇

发布于 # 聊聊技术
标签: # Go # PostgreSQL # pRESTd # RESTful API # 运维
pRESTd 试用笔记(一)——安装篇
Photo by Maxim Ilyahov on Unsplash

最近发现了一个有意思的项目 pRESTd ,可以将 PostgreSQL 数据库的操作转换为 RESTful API 请求,虽然暂时没有 100% 做到对 SQL 语句的支持,但通过 http 请求的方式提供了比 psql 控制台和代码更为轻量更为灵活的方式,根据他们官方文档的介绍, prestd 也支持类 PostgreSQL 的其他数据库,诸如 TimescaleDB 和 Redshift 。 其实,市面上很多数据库都原生支持 RESTful API ,允许用户以这种简单的方式进行有限的数据库访问及操作,比如说 Snowflake , CockroachDB 和 TigerGraph , pRESTd 的出现恰好为 PostgreSQL 这种更为流行的数据库补齐了这块短板。 限于篇幅,本文仅涉及 pRESTd 的环境准备和安装过程。 环境需求 PostgreSQL 数据库,我本地的

用 Cobra 写一个命令行工具

发布于 # 聊聊技术
标签: # cli # Cobra # Go # 调度场算法
用 Cobra 写一个命令行工具
Photo by https://pixabay.com/photos/abacus-asian-culture-counting-frame-7019994/

Cobra 是一款非常流行的命令行生成工具,由 Go 语言实现,比如说著名的博客工具 Hugo , GitHub 命令行等都是用它实现的。 一直以来我只是闻其名,却没有真正用过。最近入职了新公司,简单熟悉了新组的代码库之后,发现整个框架就是用 Cobra 搭起来的,虽然本质上是各种复杂的服务,但 Cobra 可以为用户提供一套非常简单有效的命令行工具来操作它们。因此借着这个机会,趁周末放假,我在自己的机器上实现了一个简单的命令行工具来计算输入的数学表达式,以此来熟悉一下这个大名鼎鼎的命令行构建工具。 需求 需求很简单,输入一段数学表达式,能够输出正确结果,比如说 1 + 2 得到 3 ,支持加减乘除和指数计算,包括小括号。 因为只是练习之作,这个小玩具就简单粗暴地命名为 suan ,取汉字“算”的拼音。 环境 我的 Go 版本如下所示, » go version go version go

我的 2021

发布于 # 随便聊聊
标签: # 2021 # 年终总结 # 谈笑风生
我的 2021
Photo by Markus Winkler on Unsplash

谈笑风生又一年 我们从混乱无措的 2020 年到了平淡乏味的 2021 ,眼下终于也要揭过去这一页,回望过去的一年,突然发现我的这篇小文章都是多余的,因为值得一提的地方实在不是很多,但按照传统,还是水一篇吧。 生活终于从过去的两点一线彻底变成了一个奇点,休闲、工作、购物、吃饭基本都可以在方圆 300 米之内搞定。很多时候都不需要考虑开车的事情,最远的一次出门是开到车管所续新的驾照,为节能减排,低碳环保做出了重大贡献。翻翻账单记录,上次去加油站还是在九月份,飞涨的油价似乎影响到了我,又似乎没有影响。 本以为在疫苗的加持下,我们可以度过疫情,恢复以前的正常生活,但国外抗疫的无能养出了 Delta 变种和 Omicron 变种,使得本来有些向下趋势的曲线一飞冲天,然而与去年的封城宵禁不同,至少在美国,很多人的眼里已经没有了新冠病毒,仿佛疫情从未出现过,照常生活,照常养蛊,美国的疫情早已失控,