public static void Run(string[] args)
        {
            Environment.SetEnvironmentVariable("hazelcast.logging.level", "info");
            Environment.SetEnvironmentVariable("hazelcast.logging.type", "console");

            var config = new ClientConfig();

            var nearCacheConfig = new NearCacheConfig();

            nearCacheConfig.SetMaxSize(1000)
            .SetInvalidateOnChange(true)
            .SetEvictionPolicy("Lru")
            .SetInMemoryFormat(InMemoryFormat.Binary);

            config.AddNearCacheConfig("nearcache-map-*", nearCacheConfig);
            config.GetNetworkConfig().AddAddress("127.0.0.1");

            var client = HazelcastClient.NewHazelcastClient(config);

            var map = client.GetMap <string, string>("nearcache-map-1");

            for (var i = 0; i < 1000; i++)
            {
                map.Put("key" + i, "value" + i);
            }

            var sw = new Stopwatch();

            sw.Start();
            for (var i = 0; i < 1000; i++)
            {
                map.Get("key" + i);
            }
            Console.WriteLine("Got values in " + sw.ElapsedMilliseconds + " millis");

            sw.Restart();
            for (var i = 0; i < 1000; i++)
            {
                map.Get("key" + i);
            }
            Console.WriteLine("Got cached values in " + sw.ElapsedMilliseconds + " millis");

            map.Destroy();
            client.Shutdown();
        }
예제 #2
0
        private static void Run(string[] args)
        {
            //This will enable client statistics
            Environment.SetEnvironmentVariable("hazelcast.client.statistics.enabled", "true");

            //set the statistics send period, default value is 3 seconds
            Environment.SetEnvironmentVariable("hazelcast.client.statistics.period.seconds", "3");

            var config = new ClientConfig();

            config.GetNetworkConfig().AddAddress("127.0.0.1");

            var nearCacheConfig = new NearCacheConfig();

            nearCacheConfig.SetMaxSize(1000)
            .SetInvalidateOnChange(true)
            .SetEvictionPolicy("Lru")
            .SetInMemoryFormat(InMemoryFormat.Binary);

            config.AddNearCacheConfig("myMap", nearCacheConfig);

            var client = HazelcastClient.NewHazelcastClient(config);

            //Let's generate some statistics
            var map  = client.GetMap <string, string>("myMap");
            var task = Task.Factory.StartNew(() =>
            {
                for (var i = 0; i < 100000; i++)
                {
                    map.Put("key-" + i, "value-" + i);
                    Thread.Sleep(500);
                }
            });

            //After client connected you can use Management Center to visualize client statistics
            task.Wait();
            client.Shutdown();
        }