Added per-request-cache for parameter::get similar to parameter handling in xotcl-core
This change improves scalability especially on sites…
Show more
Added per-request-cache for parameter::get similar to parameter handling in xotcl-coreThis change improves scalability especially on sites with high numbersof concurrent requests by reducing the number of required locks ingeneral. This change keeps the parameter dict in a per-request cacheto reduce potentially high number of nsv locks, when parameters of apackage are queried a often per request. Without this change we see onsome sites > 100 locks on the ad_param-nsv per request. Alone therequest-procesor queries a larger set of parameters from the acs-corepackage, which requires now a single lock operation.Using the per-request cache has the advantave of avoiding locks andkeeping the internal representations of tcl-objs (whereas ns_cache ornsvs use plain strings).
Show less