Styra Academy, our online training portal for free courses on OPA, Rego and Styra Declarative Authorization Service (DAS), has a new course available: OPA Performance.
The primary purpose for OPA within applications is, of course, fine-grained authorization — that is, who can do what and what can do what. Each user request typically requires one or more authorization decisions to be made. For this reason, having speedy authorization decisions is critical to a service’s overall performance and user experience.
As the creators and maintainers of OPA who help customers and community members put OPA into production, we decided to distill our accumulated knowledge and experience into an easy-to-consume free course — helping more people get the most value out of OPA. In the course, you will learn the mental concepts and practical tools you need to design, optimize and troubleshoot OPA performance.
Which factors affect OPA Performance?
At a high level, OPA’s end-to-end decision performance is determined by three primary factors:
- The time OPA takes to evaluate a rule
- The number of rules OPA evaluates to make a decision
- The system integration overhead to call OPA for a decision
Regarding the time OPA takes to evaluate a rule, you will learn to analyze and optimize the complexity of a rule evaluation by considering per-operation costs, iteration sizes and data indexing. On the number of rules OPA evaluates, you will learn how to craft your policy to take maximum advantage of OPA’s rule-indexing and early-exit optimizations to minimize the number of rules OPA evaluates. On the system integration overhead, you will learn the common integration models (central, sidecar, daemon and library) and the estimated overhead for each model to inform your OPA integration design.
The course will also include performance monitoring, profiling, benchmarking, memory consumption and a hands-on-lab you can use to hone and test your optimization skills!
Sign up for the OPA Performance course here! Be sure to check out our other courses on Styra Academy, too, including “OPA Policy Authoring” and “Microservice Authorization” and stay tuned for more upcoming content.