Frodo-v2.0 没有添加新功能,而是将后端最重要的部分,后台API使用
golang
重构,python现在只负责前台模板的渲染。这样原本的单服务应用就成了多服务。本文将简介v2.0的调整思路和golang异步的特性,新版本的部署文档请参看项目地址
主要重构的模块为:
- 博文、用户、标签等的后台CRUD接口
- 缓存清理模块
- JWT认证模块
why golang?
golang是年轻的语言,新世纪的静态语言。设计理念很好地平衡了C++
和 javascript/python
等动态语言的优劣,独具特色的goroutine
设计范式旨在告别多线程式的并发。而web后台和微服务是go语言用的的最多的领域,故我将后台纯api部分拿go来重写。
我是2019年开始使用kubernetes
时开始接触的go语言,当时项目有需求想要扩展一个k8s的api, 官方给的意见是如果想真正的contributor,最好使用golang开发。go语言的代表一定是docker
和kubernetes
这一最主流的容器与容器编排工具。
其次,使用go语言对我并不痛苦