fix:先转同步,不然并发多了,慢慢优化

This commit is contained in:
lan
2023-03-01 23:58:30 +08:00
parent 3688852012
commit 373d6b55a7
2 changed files with 10 additions and 6 deletions
+2 -2
View File
@@ -205,7 +205,7 @@ class ShareDataModel(BaseModel):
exp_value: int exp_value: int
type: str type: str
name: str name: str
key: str = uuid.uuid4 key: str = uuid.uuid4().hex
@app.post('/share/file/', dependencies=[Depends(admin_required)], description='分享文件') @app.post('/share/file/', dependencies=[Depends(admin_required)], description='分享文件')
@@ -231,7 +231,7 @@ async def share_text(text_model: ShareDataModel, s: AsyncSession = Depends(get_s
if exp_error: if exp_error:
raise HTTPException(status_code=400, detail='过期值异常') raise HTTPException(status_code=400, detail='过期值异常')
exp_status, exp_time, exp_count, code = await get_expire_info(text_model.exp_style, text_model.exp_value, s) exp_status, exp_time, exp_count, code = await get_expire_info(text_model.exp_style, text_model.exp_value, s)
size, _text, _type, name, key = len(text_model.text), text_model.text, 'text', '文本分享', text_model.key().hex size, _text, _type, name, key = len(text_model.text), text_model.text, 'text', '文本分享', text_model.key
s.add(Codes(code=code, text=_text, size=size, type=_type, name=name, count=exp_count, exp_time=exp_time, key=key)) s.add(Codes(code=code, text=_text, size=size, type=_type, name=name, count=exp_count, exp_time=exp_time, key=key))
await s.commit() await s.commit()
upload_ip_limit.add_ip(ip) upload_ip_limit.add_ip(ip)
+8 -4
View File
@@ -72,10 +72,14 @@
background-color: rgba(0, 0, 0, 0.4); background-color: rgba(0, 0, 0, 0.4);
} }
.el-drawer, #el-drawer__title, .el-drawer__body, .el-drawer__wrapper { .el-drawer, #el-drawer__title, .el-drawer__body, .el-drawer__wrapper .el-loading-mask {
background-color: rgba(0, 0, 0, 0.5); background-color: rgba(0, 0, 0, 0.5);
border: 1px solid transparent; border: 1px solid transparent;
} }
.el-loading-mask {
background-color: rgba(0, 0, 0, 0.8) !important;
}
} }
</style> </style>
@@ -168,7 +172,6 @@
</el-radio> </el-radio>
</el-radio-group> </el-radio-group>
</el-row> </el-row>
<el-upload <el-upload
v-if="uploadData.is_file === '1'" v-if="uploadData.is_file === '1'"
drag drag
@@ -384,6 +387,7 @@
type: 'error' type: 'error'
}); });
} }
reject(err)
}) })
}) })
}, },
@@ -393,7 +397,7 @@
formData.append('file_key', file_key); formData.append('file_key', file_key);
formData.append('chunk_index', chunk_index); formData.append('chunk_index', chunk_index);
formData.append('total_chunks', total_chunks); formData.append('total_chunks', total_chunks);
this.http('post', `/file/upload/${file_key}/`, formData).then((res) => { await this.http('post', `/file/upload/${file_key}/`, formData).then((res) => {
this.upload_groups[chunk_index - 1] = 1; this.upload_groups[chunk_index - 1] = 1;
}).catch((res) => { }).catch((res) => {
this.upload_groups[chunk_index - 1] = 2; this.upload_groups[chunk_index - 1] = 2;
@@ -497,7 +501,7 @@
const start = chunk_index * shardSize const start = chunk_index * shardSize
const end = Math.min(start + shardSize, size) const end = Math.min(start + shardSize, size)
chunk_index += 1; chunk_index += 1;
this.uploadChunk(file.slice(start, end), res.data, chunk_index, total_chunks); await this.uploadChunk(file.slice(start, end), res.data, chunk_index, total_chunks);
} }
const interval = setInterval(() => { const interval = setInterval(() => {
let success = 0; let success = 0;