Hi everyone, We are using Keto as our authenticati...
# talk-keto
m
Hi everyone, We are using Keto as our authentication tool and I wanted to get how many requests per second for check api it can support, do you guys have any such data available for this, because for me the data that I am getting while testing with j-meter is not something we can go ahead with. I might be missing something so If you guys have done any benchmarking for the same, can you please share it here so that I have a reference to validate it from.
s
For scaling, you can spin up more instances and connect them to the same database. Speaking of database, that one has to be scaled appropriately as well, it is the main bottleneck for Keto. Do you have some specific performance issues? I would recommend to use tracing so that you can see what part takes how long to drill down on the problems.
Alternatively you could use Ory Cloud to leave that burden on us 😉
m
So when you talk about Database being a bottleneck, do you have any specific number for a 4 level hierarchy model, like what kind of rps it supports at it's best with only one instance? Also we would love to do that transition, but for now we need to see the maximum output we can get from keto. Do you have any results available for that to share?
s
We tried benchmarking Keto, but I could get any result I wanted by tweaking the database and datamodel, so it is basically impossible to tell. Keto reads tuples from the db for each check. That can be just 0.001% up to 100% of the table, depending on the data model. And then it comes down to the throughput of the database.
So without knowing what the problem is it is hard to tell how you can improve performance and where the limit is. We are working on caching strategies and also a "debug" mode that is similar to some SQL databases EXPLAIN statement.
If you were an Ory Cloud customer, we could prioritize and look into your problem a lot more...