Skip to content

Commit 4c2aeea

Browse files
authored
Add documentation for simulation throttling and limits
1 parent 97f0579 commit 4c2aeea

1 file changed

Lines changed: 31 additions & 0 deletions

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Simulation Throttling and Limits
2+
3+
To ensure fair usage and system stability, simulation requests are throttled based on both the number of simulations and the number of tiles processed.
4+
5+
### Hourly Simulation Limits
6+
7+
- **Default Limits:**
8+
- simulation per hour = 30
9+
- geoprocessings per hour = 10
10+
- quicksims per hour = 30
11+
- **Per-User Customization:**
12+
- Per-user customization can be done by MapCraft using simulationsHourlyLimit, geoprocessingHourlyLimit, and quicksimHourlyLimit
13+
- **Enforcement:**
14+
- The sum of simulations run in the past hour and the number of simulations in the current batch **must not exceed** the user's `simulationsHourlyLimit`.
15+
16+
### Tile-Based Throttling
17+
18+
- **Tile Counting:**
19+
- Each simulation counts the number of tiles in its input data.
20+
- For throttling, a single simulation cannot count for more than 100 tiles, even if it processes more.
21+
- **Concurrent Tile Limits:**
22+
- **App-initiated simulations:** Up to 300 tiles can be processed concurrently.
23+
- **API-initiated simulations:** Up to 600 tiles can be processed concurrently.
24+
- **Per-user limit:** Each user can run up to 300 tiles concurrently.
25+
26+
#### Example
27+
28+
- If a project requires **150 tiles**, a user can run **3 simulations concurrently** (since each simulation is capped at 100 tiles for throttling).
29+
- If a project requires **50 tiles**, a user can run **6 simulations concurrently** (6 × 50 = 300 tiles).
30+
31+
These rules ensure that no single user or project can monopolize system resources, maintaining performance and availability for all users.

0 commit comments

Comments
 (0)