示例#1
0
        /// <summary>Create a Hazelcast client</summary>
        /// <returns>Promise of void</returns>
        private async Task CreateHazelcastClient()
        {
            Environment.SetEnvironmentVariable("hazelcast.logging.level", "info");
            Environment.SetEnvironmentVariable("hazelcast.logging.type", "console");

            var config   = new ClientConfig();
            var hostname = Environment.GetEnvironmentVariable("HOSTNAME") ?? "localhost";
            var port     = Environment.GetEnvironmentVariable("PORT") != null?Convert.ToUInt32(Environment.GetEnvironmentVariable("PORT"), 10) : 5900;

            var serializerConfig = new SerializerConfig();

            serializerConfig.SetImplementation(new Message()).SetTypeClass(typeof(CommonMessage));

            config.GetSerializationConfig().AddSerializerConfig(serializerConfig);
            config.GetNetworkConfig().AddAddress(hostname + ":" + port);

            Client  = Task.Run(() => HazelcastClient.NewHazelcastClient(config)).Result;
            _nodeId = Client.GetLocalEndpoint().GetUuid();
        }