public static MongoDB.Driver.IMongoClient GeneratePoolMongodbClient(DataServerConfigSet configSet) { var settings = new MongoDB.Driver.MongoClientSettings() { MaxConnectionPoolSize = configSet.MaxPoolSize, MinConnectionPoolSize = configSet.MinPoolSize, Server = MongoDB.Driver.MongoServerAddress.Parse(configSet.Masters.First().serverUrl.Replace("mongodb://","")) }; var client = new MongoDB.Driver.MongoClient(settings); return client; }
public static ConnectionMultiplexer GenerateRedisConnectionMultiplexer(DataServerConfigSet config) { var hosts = config.Masters.Union(config.Slavers); var password = ""; var rwHost = hosts.Select(s => { var url = s.serverUrl.Replace("redis://", ""); if (url.Contains("@")) { var parts = url.Split(new char[] { '@' }); if (string.IsNullOrWhiteSpace(password)) { password = parts[0]; } return parts[1]; } else { return url; } }).Where(s => !string.IsNullOrWhiteSpace(s)); var conString = string.Join(",", rwHost); if (!string.IsNullOrWhiteSpace(password)) { conString = string.Format("{0},password={1}", conString, password); } return ConnectionMultiplexer.Connect(conString); }