Как правильно повторно использовать драйвер MongoDB NodeJS?

#javascript #database #typescript #mongodb #graphql

Вопрос:

Вот простой рабочий пример:

 import { MongoClient } from 'mongodb'

const uri = 'mongodb://localhost:27017'
const client = new MongoClient(uri)

async function data(collection: string, database: string = 'default') {
    await client.connect()
    return client.db(database).collection(collection)
}

const resolvers = {
    Query: {
        example: async () => {
            const cursor = (await data('example'))
                .find()
                .toArray()
                .finally(() => client.close())
            return cursor
        }
    }
}
 

Это правильный способ подключения к MongoDB? Является ли это правильным способом закрытия соединения и требуется ли это? Является ли это наиболее оптимальным способом использования MongoDB; если нет, то как это можно сделать соответствующим образом?

«Распознаватель» — это распознаватель GraphQL.