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

This commit is contained in:
lan
2023-03-01 23:58:30 +08:00
parent 50c692f9bc
commit 7a589e38bd
2 changed files with 10 additions and 6 deletions
+2 -2
View File
@@ -205,7 +205,7 @@ class ShareDataModel(BaseModel):
exp_value: int
type: str
name: str
key: str = uuid.uuid4
key: str = uuid.uuid4().hex
@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:
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)
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))
await s.commit()
upload_ip_limit.add_ip(ip)
+8 -4
View File
@@ -72,10 +72,14 @@
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);
border: 1px solid transparent;
}
.el-loading-mask {
background-color: rgba(0, 0, 0, 0.8) !important;
}
}
</style>
@@ -168,7 +172,6 @@
</el-radio>
</el-radio-group>
</el-row>
<el-upload
v-if="uploadData.is_file === '1'"
drag
@@ -384,6 +387,7 @@
type: 'error'
});
}
reject(err)
})
})
},
@@ -393,7 +397,7 @@
formData.append('file_key', file_key);
formData.append('chunk_index', chunk_index);
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;
}).catch((res) => {
this.upload_groups[chunk_index - 1] = 2;
@@ -497,7 +501,7 @@
const start = chunk_index * shardSize
const end = Math.min(start + shardSize, size)
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(() => {
let success = 0;