老师好,关于删除接口的操作问题

来源:2-7 编码实战:实现文件修改接口+小结

幕布斯6084676

2019-05-05

老师您好,就是您在讲解删除接口操作时,讲到,在生产环境中要判断一些情况才能删除,比如线程同步、多线程、加锁等问题。因为在自己的实际工作中,在删除操作方面没有考虑过这些情况,所以对这些方面比较陌生。想问老师后续的课程中有这方面(同步、多线程、加锁等)的讲解吗? 或者我应该看哪些资料来提升这方面的能力呢?

写回答

1回答

xiaomo

2019-05-05

同学你好,一般生产环境中,对于数据库或者文件数据的删除,更多时候是标记删除而非物理删除。

比如用户有10个文件,那他的文件表里就有10条记录;如果用户要删除一个文件,这时候就可以把对应的那条文件记录置为`删除`的状态,而不是真的把这条记录给删掉。

这样做的好处是,一是可以一定程度上减少误删数据的概率,二是方便以后文件的找回,三是可以保留用户所有的历史文件记录。

至于删除时的判断问题,本课后面暂时并没有详细的讲解呢,后面以文档的形式再补回来哈。其实最主要考虑一点,就是删除文件的时候先判断下当前该文件是不是还有在下载,防止下载到一半时发现文件已经被删除而中断。

另外关于线程的同步,比如处理多线程/协程并发访问同一资源的场景, 可以先熟悉下golang的mutex和channel原理呢。

0
1
幕布斯6084676
非常感谢!辛苦老师了!
2019-05-05
共1条回复

Go实战仿百度云盘-实现企业级分布式云存储系统

紧随“云时代”技术潮流,分布式云存储系统,做第一代云程序员

1077 学习 · 494 问题

查看课程