Design of Pipelines
Types of pipelines
How do one chooses when to put multiple matchers in one pipeline vs splitting them in separate pipelines.#1
- different error handling
- different types of pipelines (caching, profiling)
- internal-only use
- the use of different expires attribute
Two performance hints
Sub sitemaps
So the more matchers you have (to match to a pipeline or various paths within a pipeline) your going to have a large series of if/else statements. And... since this uses string compares and wildcards and... if there's alot of these if else if statements it will lead to performance issues. It may help to break things up with sub site maps to help limit the searching.
Order
Or put the most likely pipelines to get hit first and the least likely last....
Make search hierarchical
Since you can match inside a match, you can also do this.
To get to match2-3 you need 8 matches
match1-1 | 1 match1-2 | . match1-3 | . match1-4 | . match1-5 | . match2-1 | . match2-2 | . match2-3 v 8
But you can do:
match1 | 1 match1-1 ! x match1-2 ! x match1-3 ! x match1-4 ! x match1-5 ! x match2 | . match2-1 | . match2-2 | . match2-3 v 5
And have 5 matches
Sources:
http://marc.theaimsgroup.com/?l=xml-cocoon-users&m=103452510908029&w=2 by Reinhard Pötz
http://marc.theaimsgroup.com/?l=xml-cocoon-users&m=103456246532001&w=2 by Mark Delanoy
http://marc.theaimsgroup.com/?l=xml-cocoon-users&m=103457872807696&w=2 by NicolaKen
– Reinhard Pötz
Readers comments
So as long as your pipelines have the same characteristics regarding theese points down below, there are no reasons to spread your pipelines in different pipeline elements and you can spread them in different match elements into one only pipeline element. – Gabridome