예제 #1
0
        public IgniteUserCache(ILogger logger, IIgniteClient igniteClient, AdminLibrarian adminLibrarian, IgniteClientConfiguration configuration)
        {
            this.igniteClient = igniteClient;
            this.logger       = logger;

            userCache = this.igniteClient.GetOrCreateCache <UserKey, User>(new CacheClientConfiguration
            {
                Name           = "Users",
                AtomicityMode  = CacheAtomicityMode.Transactional,
                DataRegionName = configuration.DataRegion
            });

            StoreUser(adminLibrarian);
        }
예제 #2
0
        public IgnitePersister(ILogger <IgnitePersister> logger, AdminLibrarian adminLibrarian, IgniteClientConfiguration configuration)
        {
            this.logger = logger;

            igniteClient = Ignition.StartClient(new Apache.Ignite.Core.Client.IgniteClientConfiguration
            {
                Endpoints = new[] { configuration.Ip + ":" + configuration.Port },
                EnablePartitionAwareness = true,
                Logger = new ConsoleLogger {
                    MinLevel = Apache.Ignite.Core.Log.LogLevel.Trace
                }
            });

            userCache        = new IgniteUserCache(logger, igniteClient, adminLibrarian, configuration);
            bookCache        = new IgniteBookCache(logger, igniteClient, configuration);
            reservationCache = new IgniteBookReservationQueueCache(logger, igniteClient, configuration);

            logger.LogInformation("Initialized caches");
        }