整体逻辑
- Qt 作为云盘的客户端,支持用户的登录,注册,文件的上传、下载、删除、共享等
- 后端使用Nginx作为代理服务器,将Qt客户端发送过来的动态请求转发给FastCGI程序进行处理
- FastCGI对转发的请求进行解析处理
- FastDFS中
storage
节点保存着客户端拥有的文件
- 数据库MYSQL以及缓存数据库redis
与基础版的区别
使用的通信协议不同
nginx版本:使用的是http通信协议,标准的请求和响应格式,传输格式是json
qt服务器版本:使用的是基于TCP的Socket协议,协议的格式规范可以自定义
与服务器连接的方式不同
nginx版本:客户端发送post请求URL,nginx通过配置文件来接收请求转发给FastCGI
qt服务器版本:通过Socket线程池来接收协议中自定义的请求
提问:
为什么使用FastCGI:
nginx只能部署静态页面,对于动态页面nginx无法处理,需要借助FastCGI处理
分布式体现在哪:
Fast-DFS可以将存储的文件分片放在storage节点里形成分布式存储