Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build load tests for RPC endpoints #772

Open
TomasArrachea opened this issue Mar 26, 2025 · 2 comments
Open

Build load tests for RPC endpoints #772

TomasArrachea opened this issue Mar 26, 2025 · 2 comments
Assignees
Milestone

Comments

@TomasArrachea
Copy link
Collaborator

Follow-up issue for #609.

Use the loaded store generated with the seed-store CLI added in #657 and collect performance metrics when executing RPC endpoint calls.

@TomasArrachea
Copy link
Collaborator Author

TomasArrachea commented Mar 28, 2025

#661 introduces an initial approach to benchmark the sync_state request. Currently, it executes multiple requests sequentially and prints the average elapsed time per request. I think it's worth discussing which metrics are most valuable for this flow (and also others as well).

For example, instead of only sequential execution, we could run the requests at different levels of concurrency and measure measure latency percentiles (e.g. p95, p99).


In #778 there is a possible implementation on running the requests concurrently and measuring the p95 stat.

@bobbinth
Copy link
Contributor

For example, instead of only sequential execution, we could run the requests at different levels of concurrency and measure measure latency percentiles (e.g. p95, p99).

I agree that running at different levels of concurrency is a good idea. I think we should also run at different database sizes - e.g., 100K vs. 1M (ideally, we'd do bigger database sizes too - but that could be further down the road).

As for latency percentiles, I think p95 is probably fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants