Ejemplo n.º 1
0
        public ICompiledApplication Build(IApplicationCompiler compiler)
        {
            var applicationConfig = new CounterBenchmarkConfiguration()
            {
                NumberGeneratorProcesses = 4,
                NumberGenerators         = 4,
                NumberCounterProcesses   = 4,
                NumberCounters           = 4,
                Duration       = TimeSpan.FromSeconds(10),
                Cooldown       = TimeSpan.FromSeconds(5),
                Rate           = 4,
                Implementation = CounterImplementation.UpdateBased,
            };

            //var applicationConfig = new CounterBenchmarkConfiguration()
            //{
            //    NumberGeneratorProcesses = 4,
            //    NumberGenerators = 1000,
            //    NumberCounterProcesses = 4,
            //    NumberCounters = 1000,
            //    NumberRequests = 5000,
            //    Stagger = TimeSpan.FromSeconds(1),
            //    Implementation = CounterImplementation.UpdateBased,
            //};

            //var applicationConfig = new CounterBenchmarkConfiguration()
            //{
            //    NumberGeneratorProcesses = 10,
            //    NumberGenerators = 20000,
            //    NumberCounterProcesses = 10,
            //    NumberCounters = 10,
            //    NumberRequests = 400000,
            //    Stagger = TimeSpan.FromSeconds(1),
            //    Implementation = CounterImplementation.UpdateBased,
            //};

            var runtimeLoggingConfig = new ReactiveMachine.LoggingConfiguration()
            {
                ReceiveLogLevel = LogLevel.Debug,
                SendLogLevel    = LogLevel.Debug,
            };

            var telemetryConfig = new ReactiveMachine.TelemetryBlobWriter.Configuration()
            {
                CollectHostEvents        = true,
                CollectApplicationEvents = true,
                CollectThroughput        = true,
                //CollectApplicationEvents = (System.Diagnostics.Debugger.IsAttached || applicationConfig.IsFixedRateExperiment),
                //CollectThroughput = (System.Diagnostics.Debugger.IsAttached || applicationConfig.IsLoadLoopsExperiment),
            };

            compiler
            .SetConfiguration(applicationConfig)
            .SetConfiguration(telemetryConfig)
            .SetConfiguration(runtimeLoggingConfig)
            .AddService <CounterBenchmarkService>();

            return(compiler.Compile(applicationConfig.NumberCounterProcesses + applicationConfig.NumberGeneratorProcesses));
        }
Ejemplo n.º 2
0
        public ICompiledApplication Build(IApplicationCompiler compiler)
        {
            var telemetryConfig = new ReactiveMachine.TelemetryBlobWriter.Configuration()
            {
                CollectHostEvents        = true,
                CollectApplicationEvents = true,
                CollectThroughput        = true,
            };

            compiler
            .SetConfiguration(telemetryConfig)
            .AddService <HelloWorldService>();

            return(compiler.Compile(numberOfProcesses: 1));
        }
Ejemplo n.º 3
0
        public ICompiledApplication Build(IApplicationCompiler compiler)
        {
            var applicationConfig = new HelloWorldTestConfiguration()
            {
                NumberRepetitions = 100
            };

            var telemetryConfig = new ReactiveMachine.TelemetryBlobWriter.Configuration()
            {
                CollectHostEvents        = true,
                CollectApplicationEvents = true,
                CollectThroughput        = true,
            };

            compiler
            .SetConfiguration(applicationConfig)
            .SetConfiguration(telemetryConfig)
            .AddService <HelloWorldTestService>();

            return(compiler.Compile(1));
        }
Ejemplo n.º 4
0
        public ICompiledApplication Build(IApplicationCompiler compiler)
        {
            var runtimeLoggingConfig = new ReactiveMachine.LoggingConfiguration()
            {
                ReceiveLogLevel = LogLevel.Debug,
                SendLogLevel    = LogLevel.Debug,
            };

            var telemetryConfig = new ReactiveMachine.TelemetryBlobWriter.Configuration()
            {
                CollectHostEvents        = true,
                CollectApplicationEvents = true,
                CollectThroughput        = true,
                //CollectApplicationEvents = (System.Diagnostics.Debugger.IsAttached || applicationConfig.IsFixedRateExperiment),
                //CollectThroughput = (System.Diagnostics.Debugger.IsAttached || applicationConfig.IsLoadLoopsExperiment),
            };

            compiler
            .SetConfiguration(telemetryConfig)
            .SetConfiguration(runtimeLoggingConfig)
            .AddService <CounterService>();

            return(compiler.Compile(10));
        }