You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We should consider caching expensive computations, or functions that download lots of data. For example, we could cache s3 get object requests, or computations involving searching through entire index files. This could be done using Rust's cached crate, and may improve performance on successive queries with similar parameters.
The text was updated successfully, but these errors were encountered:
We could definitely explore http caching. Maybe some data could even be cached client side? I think the main benefit of caching is to reduce any delays between the lambda functions and aws s3, in the htsget-http-lambda crate, although there might be an aws-specific solution for this.
The htsget-http-actix crate already has access to the file system so it's not as big a deal there. Although, both crates would benefit from memoization of expensive functions.
Before introducing those I would definitely profile first, @victorskl can help you out with AWS XRays profiling tools. Local profiling can be done with cargo-instruments, flamegraphs et al.
We should consider caching expensive computations, or functions that download lots of data. For example, we could cache s3 get object requests, or computations involving searching through entire index files. This could be done using Rust's cached crate, and may improve performance on successive queries with similar parameters.
The text was updated successfully, but these errors were encountered: