[ https://issues.apache.org/jira/browse/ANY23-336?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16420948#comment-16420948 ]
Hans Brende edited comment on ANY23-336 at 3/30/18 10:40 PM: ------------------------------------------------------------- [~p_ansell] Given that your PR #224 will effectively neutralize the _added_ speed advantage of my first branch over my second branch in most cases, I've gone ahead and submitted a [pull request|https://github.com/jsonld-java/jsonld-java/pull/228] for my second branch, after renaming it "issues/#227" to align more closely with your existing branch naming conventions. Please let me know if there's anything else I can do to help! was (Author: hansbrende): [~p_ansell] Given that your PR #224 will effectively neutralize the speed advantage of my first branch in most cases, I've gone ahead and submitted a [pull request|https://github.com/jsonld-java/jsonld-java/pull/228] for my second branch, after renaming it "issues/#227" to align more closely with your existing branch naming conventions. Please let me know if there's anything else I can do to help! > Parsing json-ld content takes prohibitively long time > ----------------------------------------------------- > > Key: ANY23-336 > URL: https://issues.apache.org/jira/browse/ANY23-336 > Project: Apache Any23 > Issue Type: Bug > Components: core, extractors > Affects Versions: 2.2 > Reporter: Hans Brende > Assignee: Peter Ansell > Priority: Critical > Fix For: 2.3 > > Attachments: Screen Shot 2018-03-27 at 2.52.15 PM.png, Screen Shot > 2018-03-27 at 2.54.43 PM.png > > > Using the page [https://www.guthriegreen.com|https://www.guthriegreen.com/] > as a benchmark, a page fetch took about 100 ms, while simply *parsing* the > json-ld content on that page took a *staggering 27400 ms*. For reference, I'm > using Java 8, build 162, on a Macbook Pro (early 2015). > The bad news is that this is not our fault. > I've profiled this behavior down to the > {{com.github.jsonldjava.utils.JsonUtils.fromURL(URL, CloseableHttpClient)}} > function. 94% of the parsing time is spent there. This function is called > when trying to load remote json-ld contexts. > In order to avoid loading remote contexts repeatedly, this function tries to > *cache* them by using a {{CachingHttpClient}} from the httpclient-osgi > library. > Unfortunately, that strategy is *not* working, as I have recorded exactly > *zero* cache hits, meaning that *every* retrieval is a cache miss and a > remote context is re-fetched via http every single time it's accessed. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)