Send me an example of a page with several links, and I will do my best to make sure that performance is better. Also, good news. I managed to squeeze out even more performance. Now overhead is down to about 3ms or 3/1000 of a second per request for your large ruleset.
This was done by optimizing the And/Or conditions to automatically flatten (inline) conditions of the same type upon construction (a build-time optimization,) to eliminate unnecessary looping and comparison during ruleset evaluation.
I also enhanced the performance of the request parameter map.
Do you play Magic?
Get TopDecked MTG, the #1 Magic App, built by players, for players. Free to use, forever.