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

Make access pattern of tile fetching more realistic #1

Closed
zachmullen opened this issue Feb 28, 2023 · 6 comments
Closed

Make access pattern of tile fetching more realistic #1

zachmullen opened this issue Feb 28, 2023 · 6 comments

Comments

@zachmullen
Copy link
Contributor

This may help avoid unintended cache-related artifacts in our experiments.

@manthey
Copy link

manthey commented Feb 28, 2023

Is it a concern that accesses are almost never actually random, so this may make the behavior less like real-world use?

@zachmullen
Copy link
Contributor Author

Definitely. I think a good simulated access pattern would be:

  1. Each client starts out on the highest resolution
  2. Each client picks a specific region at random to zoom in on, and does so
  3. We add jitter to the start of each client as well as the zoom

@zachmullen zachmullen changed the title Fetch tiles in randomly shuffled order, and fetch tiles from multiple resolutions Make access pattern of tile fetching more realistic Feb 28, 2023
@zachmullen
Copy link
Contributor Author

We should also consider firing multiple requests off in parallel and awaiting them rather than firing them one by one and awaiting the response, as I believe in real usage the browser will be sending multiple in parallel.

@manthey
Copy link

manthey commented Feb 28, 2023

Our typically client has five requests simultaneously pending.

@zachmullen
Copy link
Contributor Author

Good to know. If we want to go that parallel-awaiting route, we could follow the green thread pattern cited here: locustio/locust#1251

@zachmullen
Copy link
Contributor Author

Closing this until we have more actionable items. #3 may be all we need.

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