由于异步网络IO,sql server在java代码中遇到DB IO问题
我们应用程序的DB团队报告了异步网络IO问题,以及一个大但优化的查询,该查询大约在36秒内执行,产生约644000行
这背后的主要原因可能是:
A.客户端应用程序的问题
B.网络问题–(但我们的以太网速度为1GB)
因此,这可能是代码方面的问题,因为会话必须等待客户端应用程序处理从SQL Server接收的数据,以便向SQL Server发送信号,表明它可以接受新数据进行处理。 这是一种常见的情况,可能反映了糟糕的应用程序设计,也是导致异步网络IO等待类型值过多的最常见原因
下面是我们如何在代码中从数据库中获取数据
try {
queue.setTickets(jdbcTemplate.query(sql, params, new QueueMapper()));
} catch (DataAccessException e) {
logger.error("get(QueueType queueType, long ticketId)", e);
}
有人能给我提供这方面的建议吗? 提前谢谢
共 (0) 个答案