Can somebody please tell me what is the best practice to keep database and collection instances for MongoDB Java and MongoDB C# drivers? Namely, is it safe to keep database and collection instances as a singleton i.e. to keep a single instance of database and collection during the whole application lifetime? I’ve already learned from the documentation that MongoClient should be singleton since it maintains the pool of connections. But what about database and collection instances? I’ve spent some time trying to research this and I’ve found out there are different opinions about this. Someone tells that it’s okay to keep a single instance of database and collection but someone tells that it’s not.