致命:对不起,已有太多客户进行负载测试

时间:2018-03-23 12:10:21

标签: .net postgresql dapper npgsql

我目前正在使用Visual Studio和负载测试项目创建负载测试场景。

测试正在达到API端点

public async Task<bool> Index()
{
     var user = await _repositoryFactory.UserRepository.GetUserAsync(userId);
}

方法GetUserAsync(userId);只是运行一个检索用户的查询

public async Task<User> GetUserAsync(string id)
{
    var query = $"Select  * from user where u.id = '{id}'";

    var user = await _query.RunQueryAsync<User>(query);

    return user.First();
}

并且RunQueryAsync方法看起来像

public async Task<IEnumerable<T>> RunQueryAsync<T>(string query)
{
    using (var db = new NpgsqlConnection(_connectionString))
    {
        return await db.QueryAsync<T>(query);
    }
}

我正在尝试测试数百个并发API命中。这是一个非常简单的场景。我收到以下错误

  

致命:抱歉,已有太多客户

我理解这个问题,但是有办法解决这个问题吗?我试图将最大连接数增加到1000但是如果并发连接增加到&gt; = 1000,我不仅会得到错误,我相信这不是最好的方法。

我想我可以为这个特殊的例外添加try / catch / retry,但同样,这可能不是最好的方法。

0 个答案:

没有答案