public HybridCachingTest()
        {
            RedisDBOptions options = new RedisDBOptions()
            {
                AllowAdmin = true,
                //Password = ""
            };

            options.Endpoints.Add(new ServerEndPoint("127.0.0.1", 6379));

            var fakeOption = A.Fake <IOptions <RedisDBOptions> >();

            A.CallTo(() => fakeOption.Value).Returns(options);

            var fakeDbProvider = A.Fake <RedisDatabaseProvider>(option => option.WithArgumentsForConstructor(new object[] { fakeOption }));

            var serializer = new DefaultBinaryFormatterSerializer();

            //var serviceAccessor = A.Fake<Func<string, IEasyCachingProvider>>();

            //A.CallTo(() => serviceAccessor(HybridCachingKeyType.LocalKey)).Returns(new DefaultInMemoryCachingProvider(new MemoryCache(new MemoryCacheOptions())));
            //A.CallTo(() => serviceAccessor(HybridCachingKeyType.DistributedKey)).Returns(new DefaultRedisCachingProvider(fakeDbProvider, serializer));

            var providers = new List <IEasyCachingProvider>
            {
                new DefaultInMemoryCachingProvider(new MemoryCache(new MemoryCacheOptions()), new InMemoryOptions()),
                new DefaultRedisCachingProvider(fakeDbProvider, serializer, new RedisOptions())
            };

            _provider  = new HybridCachingProvider(providers);
            _defaultTs = TimeSpan.FromSeconds(30);
        }
Example #2
0
    public RedisCacheFixture()
    {
        var services     = new ServiceCollection();
        var redisOptions = new RedisDBOptions()
        {
            Password = "******", ConnectionTimeout = 1000 * 20
        };

        redisOptions.Endpoints.Add(new ServerEndPoint()
        {
            Host = "114.132.157.167", Port = 13379
        });
        var cacheOptions = new CacheOptions()
        {
            EnableLogging = true
            ,
            DBConfig = redisOptions
            ,
            PenetrationSetting = new CacheOptions.PenetrationOptions
            {
                Disable = true
                ,
                BloomFilterSetting = new CacheOptions.BloomFilterSetting
                {
                    Capacity = 10000000
                    ,
                    Name = "adnc:bloomfilter"
                    ,
                    ErrorRate = 0.001
                }
            }
        };

        services.ConfigureOptions(cacheOptions);
        //services.AddAdncInfraCaching(cacheOptions);

        Container = services.BuildServiceProvider();
    }
Example #3
0
        public RedisCacheFixture()
        {
            var containerBuilder = new ContainerBuilder();
            var redisOptions     = new RedisDBOptions()
            {
                Password = "******", ConnectionTimeout = 1000 * 20
            };

            redisOptions.Endpoints.Add(new ServerEndPoint()
            {
                Host = "193.112.75.77", Port = 13379
            });

            var cacheOptions = new CacheOptions()
            {
                EnableLogging = true
                ,
                DBConfig = redisOptions
                ,
                PenetrationSetting = new CacheOptions.PenetrationOptions
                {
                    Disable = true
                    ,
                    BloomFilterSetting = new CacheOptions.BloomFilterSetting
                    {
                        Capacity = 10000000
                        ,
                        Name = "adnc:bloomfilter"
                        ,
                        ErrorRate = 0.001
                    }
                }
            };

            containerBuilder.RegisterModule(new AdncInfraCachingModule(cacheOptions));

            Container = containerBuilder.Build();
        }
Example #4
0
        public RedisCacheFixture()
        {
            var containerBuilder = new ContainerBuilder();
            var redisOptions     = new RedisDBOptions()
            {
                Password = "******"
            };

            redisOptions.Endpoints.Add(new ServerEndPoint()
            {
                Host = "193.112.75.77", Port = 13379
            });

            var cacheOptions = new CacheOptions()
            {
                EnableLogging = true
                ,
                DBConfig = redisOptions
            };

            containerBuilder.RegisterModule(new AdncInfraCachingModule(cacheOptions));

            Container = containerBuilder.Build();
        }
 public DefaultDatabaseProvider(CacheOptions options)
 {
     _options = options.DBConfig;
     _connectionMultiplexer = new Lazy <ConnectionMultiplexer>(CreateConnectionMultiplexer);
 }