sonatype-nexus-community / nexus-blobstore-google-cloud

Nexus Repository Manager Blobstore backed by Google Cloud Storage
https://help.sonatype.com/en/configuring-blob-stores.html#google-cloud-blob-store
Eclipse Public License 1.0
39 stars 16 forks source link

Eliminate GZIP compression on 32nd chunk during upload #56

Closed nblair closed 4 years ago

nblair commented 4 years ago

Version 1.104.0 of the google-cloud-storage library includes an improvement that eliminates a bit of technical debt in the code to upload the blob content to the storage bucket.

In the event we hit the 32nd "chunk" of the file, the previous version of the library would attempt to GZIP the remainder of the stream on the way to the bucket. The compression would result in a CPU spike for these larger files and lower overall throughput.

Version 1.104 includes the ability to skip GZIP compression. This is very relevant to the plugin as pretty much every single blob we store is already compressed in some way (jar, war, gzip, docker layers, etc). Updating to this version of the library will avoid the CPU spike and potentially increase overall throughput.