@Bean
    public TurmsMongoClient messageMongoClient(TurmsPropertiesManager propertiesManager) {
        MessageMongoProperties properties = propertiesManager.getLocalProperties()
                .getService()
                .getMongo()
                .getMessage();
        MessageMongoProperties.WriteConcernProperties writeConcern = properties.getWriteConcern();
        TurmsMongoClient mongoClient = getMongoClient(properties,
                "message",
                Set.of(ClusterType.SHARDED, ClusterType.LOAD_BALANCED));
        mongoClient.registerEntitiesByOptions(
                MongoCollectionOptions.of(Message.class, writeConcern.getMessage()));
        return mongoClient;
    }
@author James Chen
@see org.springframework.boot.autoconfigure.data.mongo.MongoReactiveDataAutoConfiguration
turms-service/src/main/java/im/turms/service/storage/mongo/MongoConfig.java