[ 
https://issues.apache.org/jira/browse/JAMES-3433?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17220453#comment-17220453
 ] 

René Cordier commented on JAMES-3433:
-------------------------------------

https://github.com/linagora/james-project/pull/3935 ensures that 
CachedBlobStore is only queried for headers

> Specify blobStore read performance expectation
> ----------------------------------------------
>
>                 Key: JAMES-3433
>                 URL: https://issues.apache.org/jira/browse/JAMES-3433
>             Project: James Server
>          Issue Type: Improvement
>          Components: Blob
>    Affects Versions: master
>            Reporter: Benoit Tellier
>            Priority: Major
>
> ## Why
> https://github.com/apache/james-project/blob/master/src/adr/0014-blobstore-storage-policies.md
> James exposes a simple BlobStore API for storing raw data. However such raw 
> data often vary in size and access patterns.
> As an example:
>  - Mailbox message headers are expected to be small and frequently accessed
>  - Mailbox message body are expected to have sizes ranging from small to big 
> but are unfrequently accessed
>  - Mailbox attachments body are expected to have sizes ranging from small to 
> big but are unfrequently accessed
>  - DeletedMessageVault message headers are expected to be small and 
> unfrequently accessed
> Caching frequently accessed data for which low latencies is expected is worth 
> it.
> Caching infrequently, non-latency-sensitive data like bodies, attachment is a 
> waste of resources. We should stop doing it.
> ## Definition of done
> Write an integration test demonstrating that small mail bodies do not end up 
> in the blobStore cache.
> ## How
>  Upon reads (bytes or stream) the reader specifies which storage policy he 
> whishes to use.
> Upon LOW_COST reads the CachedBlobStore only queries the back-end, and don't 
> query the cache, nor populate it. Today behavior happens when using 
> HIGH_PERFORMANCE (query the cache and populates it if missing).
> Use HIGH_PERFORMANCE read level when reading headers, LOW_COST otherwize.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to