后端大项目抖音的互联网架构的个人分析 | 青训营

55 阅读2分钟

笔者是完完全全的零基础go语言小白,所以一开始要做大项目的时候,真的是连项目文档都看得头脑发晕,不知所云。后来在队友的帮助下,再看了一些掘金上的文章,才算对整个大项目框架有了一个大概掌握。

在笔者的大项目文档中,一共有7个主要的部分,分别是:Config配置文件、Controller控制器、Middleware中间件、Model数据模型、Routers路由、Service数据库操作、main.go主程序执行。

image.png 接下来笔者就来为读者梳理阐述一下这些文件的关系吧!

首先,在Config文件夹中,放置了我们需要用到的配置文件,也即http_port接口和database的配置信息。

image.png

接着,在Model文件夹中,分别放置了需要用到的各个结构体模型,例如用户信息,视频信息,视频列表的定义,这样在用到这些模型的时候,我们就不需要在每一个文件中都重新写出这些个模型,只需要引用Model包,然后引用相关的模型即可。另外在Model文件夹中还放置了各种处理网页请求的response,例如BusinessErrApiResultResponseHtmlResponseSuccess。这样我们处理起网页请求时就方便很多了。

在配置完这些文件和定义完需要用到数据模型后,我们就可以着手写代码主体Controller控制器部分了,这里主要看你想实现什么功能,就要写对应的控制器,而在路由中就会调用这些文件,不多赘述。

在写Controller的过程中,我们还需要写对应的数据库操作,并将其放进Service中。在这个文件夹中,定义了各种与数据库有关的函数,控制器调用这些函数。

在做完上述工作后,我们就要编写Routers路由了,路由就是定义对应的端口和URL,并指定对应的要实现该部分的控制器。

在本项目中,笔者并没有用到Middleware中间件。在日常的使用中,中间件主要有身份验证,消息共享的作用。

最后就是项目的运行文件,也就是main.go文件了,如果上面的代码写得完整了,main文件就很简单了。

image.png