Forum Discussion
Sam_Pickles_110
Nimbostratus
Jul 23, 2007Large classes in iRules
hi DevCentrallers;
I have a couple of customers who would like to make use of iRules to process traffic according to some rpetty big rulebases, which would seem to be a good fit for using classes external to the irule.
My question is: how large can a class get? Can I have a class with several million (uri string / lb pool name) entries and still be able to search it for an individual string? I know this sounds ridiculous but with some types of data arrays this could work.
If so, how does the class size affect performance?
thanks, Sam
7 Replies
- hoolio
Cirrostratus
Hi Sam, - Colin_Walker_12Historic F5 AccountThe only two ways that I'd recommend trying to store/access sets of data that large would be either via the session table, or a TCL arrray, in that order.
- Scott_Larson
Nimbostratus
Colin - would storing ~1MB or more in the session bog down the LTM at all? Would he need to "add" each record to the session every time the rule inits? Can you please provide some sample code to illustrate your suggestions? - Scott_Larson
Nimbostratus
oh, and what timeout value would you use if you wanted it to be permanent (as in Sam's case, for configuration settings) - would you just leave the timeout value blank? - Colin_Walker_12Historic F5 AccountMy previous post was directed specifically at the issue of storing large quantities of data in an iRule and having it be accessible and responsive while processing.
- Sam_Pickles_110
Nimbostratus
Thanks guys. - JRahm
Admin
You could mount a remote directory and provide the symlink as a means of loading the external class, but I think the safer solution is updating the external classes stored locally via iControl (yes, this can be done!)
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects