PUT cost a lot of time
When I put a large number of 4K files, the performance is terrible.
My testing configuration:
[bench]
concurrency = 200
object_size = 4096
num_objects = 200000
num_containers = 200
Now I trace the code of PUT operation and find some problems.
I seem looks like that three step will cost a lot of time in PUT operation.
in function "ObjectControll
for chunk in iter(lambda: reader(
upload_size += len(chunk)
if time.time() > upload_expiration:
while chunk:
sleep()
per lambda:reader will cost 600ms when I put 4K files. And also eventlet.sleep() will cost 400ms.
At last, fsync() and async_update() will const 400ms.
Is there anyone who had faced this problem? How to fix this issue?
Question information
- Language:
- English Edit question
- Status:
- Solved
- Assignee:
- No assignee Edit question
- Solved by:
- Chuck Thier
- Solved:
- Last query:
- Last reply: