-
什么是beego框架
-
简介:
-
beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用。
-
beego有八大, 是一个高度解耦的框架, 用户即使不使用 beego 的 HTTP 逻辑,也依旧可以使用这些独立模块。
-
-
用beego框架的优势:
-
Beego框架是go语言开发的web框架,gopher上手快。
-
beego是中国人开发的,开发文档比较详细。
-
(靠谱)。现在公司里面用beego的也比较多,比如今日头条,百度云盘,腾讯,阿里等。
-
-
beego框架的诟病:
-
逻辑和业务代码集中在控制器中,大佬们觉得控制器过于臃肿。
-
-
beego框架执行流程图
-
什么是fastDFS
-
fastDFS概述
-
FastDFS 是用 c 语言编写的一款开源的分布式小文件文件系统(一般用来存储图片)。
-
-
优点:
-
冗余备份 根据文件内容做运算,得到索引值,重复就直接索引(一个文件,只存一份)
-
横向扩容 只需要改fastDFS配置(服务器空间不足,扩容)
-
防止文件重名
-
负载均衡
-
-
缺点:
-
fastDFS获取文件默认是下载,而web服务并不是要下载文件,而是加载到网页
-
FastDFS的HTTP服务较为简单,无法提供负载均衡等高性能的服务
-
适合fastdfs的文件大小: 4KB < file_size <500MB
-
-
注意事项:
-
fastDFS的冗余备份、横向扩容、防止文件重名都有各自的组件,只有安装了对应的组件,才能起到对应的作用,例如:libfastcommon-master.zip 就是防重名的组件
-
-
-
什么是nginx
-
概述:
-
Nginx(engine x) 是一个高性能的HTTP和反向代理服务器
-
-
作用:
-
服务器负载均衡
-
反向代理
-
web服务器
-
-
-
fastDFS为什么要用nginx
-
fastDFS获取文件默认是下载,而web服务并不是要下载文件
-
客户端访问到文件id的时候,需要nginx反向代理,才能获取到文件的信息
-
-
fastDFS如何配置nginx
-
sudo cp fastdfs-nginx-module-master解压后的目录中src下mod_fastdfs.conf /etc/fdfs/mod_fastdfs.conf
-
修改配置文件 sudo vim /etc/fdfs/mod_fastdfs.conf
修改内容:
connect_timeout=10
tracker_server=自己ubuntu虚拟机的ip地址:22122
url_have_group_name=true
store_path0=/home/itcast/fastdfs/storage
-
sudo cp 解压缩的fastdfs-master目录中的conf中的http.conf /etc/fdfs/http.conf
-
sudo cp 解压缩的fastdfs-master目录中conf的mime.types /etc/fdfs/mime.types
-
修改nginx配置文件: sudo vim /usr/local/nginx/conf/nginx.conf
在http部分中添加配置信息如下:
server {
listen 8888;
server_name localhost;
location ~/group[0-9]/ {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
-
通过以上的配置,将fastDFS绑定在nginx web服务器上,解决了fastDFS获取文件的问题
-
-
-
beego框架如何使用fastDFS
-
go使用fastDFS就要借助第三方扩展库,例如:github.com/weilaihui/fdfs_client 或者 github.com/sjqzhang/go-fastdfs
-
例如:github.com/weilaihui/fdfs_client 有client_test.go 了解调用方法。
-
如此,上传图片,把获取的图片id存入数据库就OK了。
-