Ejemplo n.º 1
0
        public override Task <AIR.CommonRes> RunTest1(AIR.CommonReq req1, ServerCallContext context)
        {
            var response = new AIR.CommonRes()
            {
                Resone = "RUNTEST1" + req1.Fieldone,
                Restwo = req1.Fieldtwo.ToString()
            };

            return(Task.FromResult(response));
        }
Ejemplo n.º 2
0
        public override Task <AIR.CommonRes> RunTest2(AIR.CommonReq req1, ServerCallContext context)
        {
            AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);

            var httpHandler1 = new HttpClientHandler();

            // Return `true` to allow certificates that are untrusted/invalid
            httpHandler1.ServerCertificateCustomValidationCallback
                = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;

            var httpClient1 = new HttpClient(httpHandler1);
            var sw          = Stopwatch.StartNew();
            var endpoint1   = $"http://kong:9080";
            //var channel1 = GrpcChannel.ForAddress(endpoint1, new GrpcChannelOptions { HttpClient = httpClient1, Credentials = ChannelCredentials.Insecure });
            var channel1 = GrpcChannel.ForAddress(endpoint1, new GrpcChannelOptions {
                HttpClient = httpClient1, Credentials = Grpc.Core.ChannelCredentials.Insecure
            });

            var client1 = new LossClient(channel1);


            var response = client1.RunLoss(new GrpcServices.LossRequest()
            {
                Package = "Pkg" + req1.Fieldone
            });

            sw.Stop();
            Console.WriteLine($"Total time: through kong: {sw.ElapsedMilliseconds}");

            sw        = Stopwatch.StartNew();
            endpoint1 = $"http://loss:80";
            //var channel1 = GrpcChannel.ForAddress(endpoint1, new GrpcChannelOptions { HttpClient = httpClient1, Credentials = ChannelCredentials.Insecure });
            channel1 = GrpcChannel.ForAddress(endpoint1, new GrpcChannelOptions {
                HttpClient = httpClient1, Credentials = Grpc.Core.ChannelCredentials.Insecure
            });

            client1 = new LossClient(channel1);


            response = client1.RunLoss(new GrpcServices.LossRequest()
            {
                Package = "Pkg" + req1.Fieldone
            });
            sw.Stop();
            Console.WriteLine($"Total time: through service directly: {sw.ElapsedMilliseconds}");

            return(Task.FromResult(new AIR.CommonRes()
            {
                Resone = response.Package
            }));
        }
Ejemplo n.º 3
0
        private static bool TestGrpcCommon()
        {
            var rv = false;

            AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);



            var httpHandler1 = new HttpClientHandler();
            var httpHandler2 = new HttpClientHandler();

            // Return `true` to allow certificates that are untrusted/invalid
            httpHandler1.ServerCertificateCustomValidationCallback
                = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;

            // Return `true` to allow certificates that are untrusted/invalid
            httpHandler2.ServerCertificateCustomValidationCallback
                = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;

            var httpClient1 = new HttpClient(httpHandler1);
            var httpClient2 = new HttpClient(httpHandler2);


            var request = new AIR.CommonReq {
                Fieldone = "hello", Fieldtwo = 21
            };
            var request2 = new AIR.CommonReq {
                Fieldone = "hello", Fieldtwo = 21
            };

            var endpoint1 = $"http://localhost:{5005}";
            var endpoint2 = $"http://localhost:{5006}";

            var channel1 = GrpcChannel.ForAddress(endpoint1, new GrpcChannelOptions {
                HttpClient = httpClient1, Credentials = Grpc.Core.ChannelCredentials.Insecure
            });
            var channel2 = GrpcChannel.ForAddress(endpoint2, new GrpcChannelOptions {
                HttpClient = httpClient2, Credentials = Grpc.Core.ChannelCredentials.Insecure
            });

            var client1 = new CommonTest1.Test1.Test1Client(channel1);
            var client2 = new CommonTest2.Test2.Test2Client(channel2);

            var stopwatch = new Stopwatch();

            stopwatch.Start();

            try
            {
                var result1 = client1.RunTest1(request);
                var result2 = client2.RunTest2(request2);

                if (result1.Equals(result2))
                {
                    Console.WriteLine($"Success! {result1}");
                    rv = true;
                }

                result1 = client1.RunTest1(request);
                result2 = client2.RunTest2(new AIR.CommonReq {
                    Fieldone = "goodbye", Fieldtwo = 0
                });

                if (!result1.Equals(result2))
                {
                    Console.WriteLine($"Success! {result1}");
                    rv = true;
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Failure" + e.Message);
            }

            stopwatch.Stop();

            Console.WriteLine($"{stopwatch.ElapsedMilliseconds}");
            return(rv);
        }