Exemplo n.º 1
0
        public void HighLoad()
        {
            var hs = new HostServer(14910);

            hs.Initialize();
            var mvc = (MvcFactory)hs.Container.Get <IMvcFactory>();

            mvc.Register(typeof(TestAction).Assembly);
            var tasks = new List <Task>();

            for (var i = 0; i < 20; i++)
            {
                for (var j = 0; j < 4; j++)
                {
                    tasks.Add(Task.Run(() => {
                        hs.Call("/test/best");
                    }));
                }
                Console.WriteLine(i);
                Thread.Sleep(200);
            }
            Task.WaitAll(tasks.ToArray());
            Console.WriteLine(mvc.GetMetric("action.pool.count"));
            Console.WriteLine(TestAction.creates);
            Assert.Greater(10, mvc.GetMetric("action.pool.count").ToInt());
            Assert.Greater(10, TestAction.creates);
        }
Exemplo n.º 2
0
        public void CanRunSingle()
        {
            var hs = new HostServer(14910);

            hs.Initialize();
            var mvc = (MvcFactory)hs.Container.Get <IMvcFactory>();

            mvc.Register(typeof(TestAction).Assembly);
            var result = hs.Call("/test/best");

            Console.WriteLine(result);
            Assert.AreEqual("0", result);
            Assert.AreEqual(1, mvc.GetMetric("action.pool.count"));
            result = hs.Call("/test/best");
            Assert.AreEqual("1", result);
            Assert.AreEqual(1, TestAction.creates);
            Assert.AreEqual(1, mvc.GetMetric("action.pool.count"));
        }