Leif Hedstrom created TS-2536:
---------------------------------

             Summary: CLONE - VariableExpander in header_rewrite is unnecessary 
expensive
                 Key: TS-2536
                 URL: https://issues.apache.org/jira/browse/TS-2536
             Project: Traffic Server
          Issue Type: Bug
          Components: Plugins
            Reporter: Leif Hedstrom
            Assignee: Leif Hedstrom
             Fix For: 4.2.0


It seems that VariableExpander gets instantiated and executed on every 
add-header operator. However, this seems rather suboptimal for a number of 
reasons:

1. It might not even be necessary (i.e. there might not be any %<> strings in 
the "static" string.

2. Perhaps even more important, we look for these strings on every request, 
even though if they are there, they would always be in the same position on 
every request.


One suggestion would be to incorporate the VariableExpander "state" as part of 
parsing the configuration on startup / reload. Maybe it gets complicated when 
there are other expansions, but it still feels we can pre-parse these strings 
and get some ideas of what needs to be expanded once, and not on every request.

This is similar to how e.g. the regex_remap plugin works, it recalculates the 
positions and expansion once only.

Thoughts?




--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to