Перейти к основному контенту

Benchmarks

The overhead of policy enforcement has been benchmarked in model_b_test.go. The testbed configuration is as follows:

Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz, 2601 Mhz, 4 Core(s), 8 Logical Processor(s)

Following are the benchmarking results obtained by running go test -bench=. -benchmem (op = an Enforce() call, ms = millisecond, KB = kilobytes):

Испытательный регистрРазмер правилаПерекрытие времени (мс/оп)Memory overhead (KB)
ACL2 правила (2 пользователя)0.0154935.649
RBAC5 правил (2 пользователя, 1 роль)0.0217387.522
RBAC (маленький)1100 правил (1000 пользователей, 100 ролей)0.16430980.620
RBAC (средний)11000 правил (10000 пользователей, 1000 ролей)2.258262765.152
RBAC (большой)Правила 110000 (100000 пользователей, 10000 ролей)23.9167767,606
RBAC с ролями ресурсов6 правил (2 пользователя, 2 роли)0.0211467.906
RBAC с доменами/арендаторами6 правил (2 пользователя, 1 роль, 2 домена)0.03269610.755
АДАТ0 правил (0 пользователь)0.0075102.328
Восстановленный5 правил (3 пользователя)0.04539891.774
Запретить переопределение6 правил (2 пользователя, 1 роль)0.0232818.370
Приоритет9 правил (2 пользователя, 2 роли)0.0163895.313

Benchmark monitoring

In the embedded web page below, you can see the performance changes of Casbin for each commit.

You can also directly browse it at: https://v1.casbin.org/casbin/benchmark-monitoring