public async Task InitializeAsync() { var confOpts = ConfigurationOptions.Parse(_connStr); _client = await SpiderRedisClient.CreateAsync(confOpts); await _client.SubscribeAsync(_channel, DeserializeProxies); }
public override async Task RunAsync() { var conf = DbConfigManager.Default.GetConfig("SqlServerTest", true); if (conf == null) { throw new DbConfigNotFoundException(); } var confOpts = ConfigurationOptions.Parse("localhost:6379"); var client = await SpiderRedisClient.CreateAsync(confOpts); }
internal static async Task <long> PublishProxiesAsync(IEnumerable <SpiderProxyUriEntity> proxies, DbConfig redisConfig, string redisChannel = "SpiderProxyFetcher", bool useCache = true) { string connStr = redisConfig.ConnectionString; SpiderRedisClient redisClient = useCache ? _redisClientCache.GetOrAdd(connStr, str => SpiderRedisClient.Create(str)) : await SpiderRedisClient.CreateAsync(connStr).ConfigureAwait(false); string json = JsonConvert.SerializeObject(proxies); long result = await redisClient.PublishAsync(redisChannel, json); if (!useCache) { redisClient.Disable(); } return(result); }