Reentrancy and Scoping for Multitenant Rule Engines

Kennedy Kambona, Thierry Renaux, Wolfgang De Meuter · 2017

Evolutions in web technologies have enabled more and more applications to be deployed in the Cloud leading to the increasing adoption of multitenancy.Multitenant systems can share one application instance across many tenants and clients distributed over multiple devices.These systems need to manage the shared knowledge base reused by the various users and applications they support.Rather than hard-coding all the shared knowledge and ontologies, developers often encode this knowledge in the form of rules to program server-side business logic.In such situations, a modern inference engine can be used to accommodate the knowledge for tenants of a multitenant web system.Existing inference engines, however, were not conceptually designed to support and to cope with the knowledge of the rules of multiple applications and clients at the same time.They are not fit for multitenant web systems since one has to manually hard-code the modularity of the knowledge for the various applications and clients, which quickly becomes complex and fallible.We present Serena, a middleware supporting multitenant reactive web applications.Serena augments an event-driven web server with a Rete-based inference engine.The distinctive feature of Serena is the notion of reentrancy and scoping in its inference engine, which is the key solution in making it multitenant.We validate our work through a simulated case study and a comparison with a similar common-place approach, showing that our flexible approach improves computational efficiency in the engine.

Read the paper · More papers on PaperTik