Bytegush 架构设计
作为一个既不是单体,也称不上微服务的独立站架构,我姑且称之为小微服务。
在经过了多轮的尝试,在权衡性能和效率之后,终于把网站的架构稳定下来。这是一个融合PHP,GoLang,Nextjs的多语言项目架构。Nextjs作为部署在Vercel的前端,承载了Bytegush主站和HowtoSay主站的前端主要功能。后端则部署在单服务器上,利用高效成熟的PHP Laravel框架可以快速开发接口和简单的HTML页面,利用GoLang轻量和高并发的能力,作为一个辅助的中间件,可提供缓存,搜索,监控等服务,取代过重的Redis,Elastics Search等服务,在低内存和性能的服务器上也能够运行。最后再加上Nginx来做反向代理,就称为一个麻雀虽小,五脏俱全的服务。
