All allocations start in Gen 0, also called the "nursery", which you can think of as arena allocation. Whenever you do a Gen 0 collection, the whole arena is freed, except that anything still alive is moved into the Gen 1 space. This actually maps pretty closely to the "request-based" model. If most of the allocation in your app is due to handling requests than the vast majority of Gen 0 will just be current requests.