c# – Asp. Net:测试并发性

我们有一个网站,公司必须上传zip文件,文件上传后,应用程序检查数据库中的一些内容,然后进行一些插入.

问题是,鉴于高并发性,网站工作非常糟糕,在与基础架构团队交谈之后,我们决定重新设计并重新开发asp .net web应用程序.

所以,我们正在开发应用程序,为了避免我们遇到的并发问题,我想知道如何测试并发性(告诉很多人上传文件到网站不是一个选项)并监控…

这是我第一次做这样的事情,所以,我会欣赏想法,文章等.

最佳答案 简短而简单的答案是
Jmeter或者例如
NeoLoad.如果您拥有Ultimate版本,也可以考虑将Visual Studio
web tests作为选项.

但是我个人只是从在C#中编码并与执行并行开始.不知道你的背景,但因为有[C#]标签有问题……

    private volatile int threads;

    [TestMethod]
    private void Main()
    {
        const int threadCount = 10;
        for (int i = 0; i < threadCount; i++)
        {
            ++threads;
            new Thread(LoadFile).Start();
        }
        while (threads > 0)
        {
            Thread.Sleep(10);
        }
    }

    private void LoadFile()
    {
        var watch = Stopwatch.StartNew();
        //todo: do POST call
        Console.WriteLine(watch.ElapsedMilliseconds);
        --threads;
    }

以此为出发点,绝对不是完成/准备生产的东西.记录,计时累积,线程计数,用EventWaitHandles替换volatile int …

希望这可以帮助.

点赞