You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wink.apache.org by "Michael Elman (JIRA)" <ji...@apache.org> on 2009/08/02 07:50:15 UTC

[jira] Commented: (WINK-114) Cache parsed Accept header content where possible

    [ https://issues.apache.org/jira/browse/WINK-114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12737999#action_12737999 ] 

Michael Elman commented on WINK-114:
------------------------------------

VERY interesting indeed. Thanks Bryant! 
Well, it means that the HashMap must be always synchronized for multi-threaded. Collections.synchronizedMap() will solve this, but will reduce the efficiency of the cache. 
Synchronizing the HeaderDelegatesCache using read/write locks may be a better solution.

> Cache parsed Accept header content where possible
> -------------------------------------------------
>
>                 Key: WINK-114
>                 URL: https://issues.apache.org/jira/browse/WINK-114
>             Project: Wink
>          Issue Type: Improvement
>          Components: Common
>    Affects Versions: 0.1
>            Reporter: Nick Gallardo
>             Fix For: 0.2
>
>         Attachments: WINK-114-generic.patch, WINK-114-ThreadLocal.patch, WINK-114-use-pattern.patch, WINK-114.patch
>
>
> AcceptHeaderDelete.fromString() is called for every invocation.  This drives calls to string splits and some regex tools that start to show up in profiles as taking up a notable amount of time.  Since the content for the Accept headers will remain within a fairly bounded set, we can cache the parsed content and improve performance.
> Here's a patch with a simple solution.  Really I think there's a better way to do this.  Presumably, there are other headers where the same thing applies.  We can handle those on an individual basis or we can come up with something more generic that can be used by all HeaderDelegates.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.