OpenRules Decision Manager: Performance Breakthrough

OpenRules Decision Manager: Performance Breakthrough

For years many Rule Engine customers were satisfied with their performance as the majority of rule engines delivered in general good performance. However, this picture has changed dramatically in the last 3-4 years when the number of rules-based real-time transactions started to grow from hundreds of thousands or several millions to hundreds of millions per day. The typical execution time of 50-100 milliseconds per transaction that used to be considered as a good performance indicator is not sufficient anymore in many practical situations. Nowadays enterprise-level customers require the performance that goes down to only a few milliseconds per transaction or in many cases under 1 millisecond. This real-world requirement along with dramatic shift to the cloud-based deployment was the main reason why two years ago we redesigned our Classic OpenRules product and built its new incarnation known today as “OpenRules Decision Manager“.

I knew that our Decision Manager improved the performance of the decision services roughly from 10 to 100 times. But being busy with helping our customers and adding new great capabilities (e.g. Rules Debugging) to the product, we didn’t have time to do the performance benchmarking. DMCommunity.org Feb-2021 Challenge "Medical Service Coverage" gave us an opportunity to do it considering different deployment options supported by OpenRules Decision Manager. It deals with a relatively big decision table that contains more than 16K rules. So, we finally created a benchmark for this problem and compared the performance of the following implementations:

  • OpenRules Java API
  • OpenRules deployed with Docker
  • OpenRules deployed as AWS Lambda
  • Brute-Force Java implementation

The results were quite impressive: OpenRules-based decision service was able to execute 100K requests per second averaging less than 0.01 milliseconds per request! It shows the performance that is 50 times faster to compare with a brute-force Java solution. You may compare these results with other already submitted solutions for the challenge.

Get the latest version 8.3.2 of OpenRules Decision Manager to get all sources and check this performance on your own machine. Alternatively you may execute this service containerized as a Docker without any OpenRules installation.

The detailed description of our benchmark and performance results can be found in this post "Benchmarking Decision Service".

To view or add a comment, sign in

More articles by Jacob Feldman, PhD

  • AI-Friendly Decision Services

    LLMs aren't decision-makers — at least not yet. But they've proven to be remarkably effective translators between…

  • OpenRules AI Agent “Inside/Outside Production”

    This AI agent helps manufacturers determine the optimal mix of internal production and external sourcing for each…

  • Agentic Medical Services - OpenRules Solution

    DMCommunity.org has posted a new April 2026 Challenge that aims to explore how LLMs orchestrate rule-based decision…

    13 Comments
  • Peter Norvig about LLMs

    In December 2009, Peter Norvig—then Director of Research at Google—delivered his lecture “The Unreasonable…

  • Decision Modeling and Retro-Analysis

    Nine years later, my article “Raymond Smullyan’s Retro-Analysis and Decision Modeling” still sparks interesting…

  • New Tools and Skills Shift

    Nowadays, we hear a lot about a strong historical parallel between AI transforming software development today and…

    4 Comments
  • Decision Models with Probability Constraints

    It is common for decision models to differentiate between hard and soft rules (constraints). Soft constraints (or…

  • OpenRules Decision Playground in Action

    Decision Playground is an Interactive Visual Tool for Real-Time Decision Optimization. It Enables Business Users to…

  • From Solvers to Decision Factories

    Constraint and linear solvers have decades of proven success tackling scheduling and resource allocation problems —…

    4 Comments
  • System of Records for Decisioning

    Deepak Jha once again raises a question that deserves repeated attention: "Where's the system of record for judgment?"…

    3 Comments

Others also viewed

Explore content categories