想问一下各位大佬,做一个这样的系统,需要学习什么东西呢?

2022-10-18 14:43:38 +08:00
 ifxxn

存储转发系统软件包含:sftp 服务端,mqtt 服务端,交互接口(暴露给其他系统)。限定语言:C/C++/Go/Rust,运行于 Linux 系统,功能:

  1. 实现 RBAC ,用户只能访问指定目录,只能对指定的文件进行操作。

  2. sftp 服务,支持用户对文件的上传、浏览、下载、删除、更新以及过期删除等操作。

  3. mqtt 服务,将其他系统的消息通过该系统发送至订阅者。

  4. 支持同时上传的用户数为 m ,同时下载的用户数为 n 。

  5. 其他系统通过接口去修改该系统的某些信息。


老师这几天问我能不能实现这个功能,因为之前没太了解过网络编程,所以有点无从下手。想请教一下各位大佬,完成这些功能需要学习什么知识,或者实现这些功能的思路。

2084 次点击
所在节点    Linux
7 条回复
ggsimida0
2022-10-18 14:57:13 +08:00
https://www.ssh.com/academy/ssh/sftp?hs_amp=true
https://mqtt.org
《 UNIX 环境高级编程》
《 UNIX 网络编程》
swulling
2022-10-18 14:58:10 +08:00
建议用 Go ,学习下 Go 服务端编程
ifxxn
2022-10-18 15:02:13 +08:00
@swulling 请问有什么好的教程推荐吗?
ggsimida0
2022-10-18 15:02:34 +08:00
ifxxn
2022-10-18 15:04:37 +08:00
@ggsimida0 感谢(●'◡'●)
tututututututu
2022-10-19 11:51:05 +08:00
瞎讲两下
1. 通过 Oauth 实现权限管理
2. 通过 CDN 做资源存储再做个资源管理功能
3. 通过类似 SignalR 的技术做服务端对客户端的异步推送
4. 通过 sentinel 类似的做流控
5. 将系统进行微服务化,基建统一化,多入口

具体技术看你用什么语言生态,找个差不多的就能用了
ifxxn
2022-10-19 16:29:14 +08:00
@tututututututu 感谢,老师昨天又说必须使用 C 语言,难顶。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/887777

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX