distribution/registry/storage/driver/s3-aws
Milos Gajdos b888b14b39
Optimise push in S3 driver
This commit cleans up and attempts to optimise the performance of image push in S3 driver.
There are 2 main changes:
* we refactor the S3 driver Writer where instead of using separate bytes
  slices for ready and pending parts which get constantly appended data
  into them causing unnecessary allocations we use optimised bytes
  buffers; we make sure these are used efficiently when written to.
* we introduce a memory pool that is used for allocating the byte
  buffers introduced above

These changes should alleviate high memory pressure on the push path to S3.

Co-authored-by: Cory Snider <corhere@gmail.com>
Signed-off-by: Milos Gajdos <milosthegajdos@gmail.com>
2023-09-27 21:33:22 +01:00
..
s3.go Optimise push in S3 driver 2023-09-27 21:33:22 +01:00
s3_test.go Preallocate created slice in S3 tests 2023-09-03 23:26:32 +01:00
s3_v2_signer.go Fix gometalint errors 2019-02-04 16:01:04 -08:00