首页
注册
登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请
登录
V2EX
›
shakeyo
›
全部回复第 4 页 / 共 10 页
回复总数
187
1
2
3
4
5
6
7
8
9
10
❮
❯
2023-03-09 16:11:01 +08:00
回复了
GraySoul
创建的主题
›
程序员
›
小白真诚求问, Java web 开发究竟啥场景需要用到多线程各种天花烂醉锁?
@
14104chk
现在就是你说的这个方案,数据库只有文件目录结构的索引,路径枚举的方式存储
真实文件是存储到 oss 上的,这里讨论要用到锁的场景指的也是针对文件目录树的冲突
那你的思路跟我是一样的,操作子目录得一直向上锁定
再蹲一个更好的思路
2023-03-09 14:37:36 +08:00
回复了
GraySoul
创建的主题
›
程序员
›
小白真诚求问, Java web 开发究竟啥场景需要用到多线程各种天花烂醉锁?
当前碰到一个网盘场景,刚好发出来看看大佬们的想法
数据库中基于路径枚举以及邻近表的方式存储了一个文件目录结构
当多个用户对某个文件夹以及子文件夹进行操作的时候,可能会导致冲突
例如,用户 a 在 /1/2 文件夹下上传或者移入文件、文件夹
用户 b 同时对 /1 移动或者 rename ,或者删除,此时很显然造成了冲突,如果不做任何处理,用户 a 将碰到部分文件上传失败
简单的思路就是根据路径设计一套读写锁,如果写目录,则把当前文件往上全部加锁,其他操作发现有写锁要么等待,要么友好提示用户稍后再试
2023-02-15 11:16:16 +08:00
回复了
kkkbbb
创建的主题
›
程序员
›
代码问题请教
无意义,循环不会跳出,这也太基础了
大概率是调试代码
1
2
3
4
5
6
7
8
9
10
❮
❯
关于
·
帮助文档
·
博客
·
API
·
FAQ
·
实用小工具
·
2094 人在线
最高记录 6679
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 25ms ·
UTC 16:12
·
PVG 00:12
·
LAX 09:12
·
JFK 12:12
Developed with
CodeLauncher
♥ Do have faith in what you're doing.