Why database client instances are created inside of fetch()?

:warning:I’m new to cloudflare and even node.js.:warning:

I’ve read cloudflare postgres document and an example code:

// https://developers.cloudflare.com/workers/tutorials/postgres/
export default {
  async fetch(request, env, ctx): Promise<Response> {
    const client = new Client(env.DB_URL);
    await client.connect();

Cloudflare forces workers to get environment variables as a parameter of fetch(), so the client instances should be created inside of fetch. Then the instances are created on every http request handle? Isn’t it inefficient?