seaweedfs/weed/s3api
Patrick Schmidt cdd817edf9 Improve S3 request signing performance
This change is caching HMAC hashers for repeated use in subsequent
requests and chunks, so they don't have to be initialized from
scratch every time.
On my local computer this gives me ~5-6 times faster signature
calculation and ~5-6.5% more throughput in S3 requests. The smaller
the payload the better the throughput gets.
2023-09-05 10:33:27 -07:00
..
policy docs(s3api): readability improvements (#3696) 2022-09-15 03:13:21 -07:00
s3_constants s3 fix get fake dir object key (#4390) 2023-04-11 07:36:22 -07:00
s3account change s3_account.go package to avoid cycle dependency (#3813) 2022-10-10 06:44:29 -07:00
s3acl don't skip empty value at AssembleEntryWithAcp (#3855) 2022-10-13 22:50:44 -07:00
s3bucket text change 2023-02-07 15:00:41 -08:00
s3err add ownership rest apis (#3765) 2022-10-01 19:18:00 -07:00
AmazonS3.xsd add list all my buckets 2018-07-18 02:37:09 -07:00
auth_credentials.go Improve S3 request signing performance 2023-09-05 10:33:27 -07:00
auth_credentials_subscribe.go refactoring 2023-03-21 23:01:49 -07:00
auth_credentials_test.go change s3_account.go package to avoid cycle dependency (#3813) 2022-10-10 06:44:29 -07:00
auth_signature_v2.go docs(s3api): readability improvements (#3696) 2022-09-15 03:13:21 -07:00
auth_signature_v4.go Improve S3 request signing performance 2023-09-05 10:33:27 -07:00
auto_signature_v4_test.go Improve S3 request signing performance 2023-09-05 10:33:27 -07:00
bucket_metadata.go split ExtAcpKey to ExtAmzOwnerKey and ExtAmzAclKey to avoid unn… (#3824) 2022-10-11 20:14:14 -07:00
bucket_metadata_test.go split ExtAcpKey to ExtAmzOwnerKey and ExtAmzAclKey to avoid unn… (#3824) 2022-10-11 20:14:14 -07:00
chunked_reader_v4.go Improve S3 request signing performance 2023-09-05 10:33:27 -07:00
custom_types.go weed s3: generate time format acceptable by aws cli s3 2019-04-01 16:13:29 -07:00
filer_multipart.go ErrInvalidPart when completed parts has extra parts 2023-08-17 00:51:42 -07:00
filer_multipart_test.go Fix ide warning (#4082) 2022-12-26 00:03:47 -08:00
filer_util.go Use filerGroup for s3 buckets collection prefix (#4465) 2023-05-16 09:39:43 -07:00
filer_util_tags.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
README.txt add list all my buckets 2018-07-18 02:37:09 -07:00
s3api_acp.go change s3_account.go package to avoid cycle dependency (#3813) 2022-10-10 06:44:29 -07:00
s3api_auth.go go fmt 2020-02-26 16:52:57 -08:00
s3api_bucket_handlers.go Use filerGroup for s3 buckets collection prefix (#4465) 2023-05-16 09:39:43 -07:00
s3api_bucket_handlers_test.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_bucket_skip_handlers.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_circuit_breaker.go grpc connection to filer add sw-client-id header 2023-01-20 01:48:12 -08:00
s3api_circuit_breaker_test.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_handlers.go grpc connection to filer add sw-client-id header 2023-01-20 01:48:12 -08:00
s3api_object_copy_handlers.go Use filerGroup for s3 buckets collection prefix (#4465) 2023-05-16 09:39:43 -07:00
s3api_object_copy_handlers_test.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_object_handlers.go Add time to first byte metric for s3 (#4768) 2023-08-21 00:42:39 -07:00
s3api_object_handlers_postpolicy.go Use filerGroup for s3 buckets collection prefix (#4465) 2023-05-16 09:39:43 -07:00
s3api_object_handlers_test.go add back "/" prefix if it is missing in object 2022-10-29 17:54:30 -07:00
s3api_object_multipart_handlers.go Use filerGroup for s3 buckets collection prefix (#4465) 2023-05-16 09:39:43 -07:00
s3api_object_skip_handlers.go AclHandlers 2021-10-11 15:03:56 +05:00
s3api_object_tagging_handlers.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_objects_list_handlers.go allow deleting only older empty dir without recursion (#4430) 2023-04-25 08:31:14 -07:00
s3api_objects_list_handlers_test.go fix test prefix is a directory (#4393) 2023-04-12 00:08:13 -07:00
s3api_policy.go correct comments 2022-02-26 22:44:26 +08:00
s3api_server.go Use filerGroup for s3 buckets collection prefix (#4465) 2023-05-16 09:39:43 -07:00
s3api_server_grpc.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_status_handlers.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_test.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
s3api_xsd_generated.go weed/s3api: added new bucket handlers for more compatibility with AWS S3 2022-02-03 17:17:05 +03:00
stats.go Add time to first byte metric for s3 (#4768) 2023-08-21 00:42:39 -07:00
tags.go sort tags by key (#4047) 2022-12-11 22:49:57 -08:00
tags_test.go move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00

see https://blog.aqwari.net/xml-schema-go/

1. go get aqwari.net/xml/cmd/xsdgen
2. xsdgen -o s3api_xsd_generated.go -pkg s3api AmazonS3.xsd