我们在Azure的Saas应用程序中包含Redis缓存。
但我们也遇到了一些问题,我们不时会看到这类错误
Timeout performing EVAL, inst: 2, queue: 23, qu: 0, qs: 23, qc: 0, wr: 0, wq: 0, in: 65536, ar: 0,
IOCP: (Busy=1,Free=999,Min=1,Max=1000), WORKER: (Busy=2,Free=8189,Min=1,Max=8191)
Timeout performing EVAL, inst: 2, queue: 3, qu: 0, qs: 3, qc: 0, wr: 0, wq: 0, in: 65536, ar: 0,
IOCP: (Busy=1,Free=999,Min=1,Max=1000), WORKER: (Busy=3,Free=8188,Min=1,Max=8191)
当试图解释这些日志时,我很难知道从哪里开始,从哪里看并得出结论。
请问有没有人能告诉我这些特定的值是什么?Redis示例和服务器在同一个区域,我使用的是1GB内存的c1计划,但是通过简单的测试就出现了这些错误。
设置为:
ConnectionTimeoutInMilliseconds = "2000" operationTimeoutInMilliseconds = "1500" retryTimeoutInMilliseconds = "4500"
在Azure的redis Jmeter 板中,我没有看到任何内存峰值、连接或其他任何东西,我应该查看任何特定的值吗?
1条答案
按热度按时间hc8w905p1#
超时中的“in:65536”值非常高。此值表示客户端的套接字内核缓冲区中有多少数据。这表示数据已到达本地计算机,但尚未被应用程序层读取。这通常发生在1)需要调整线程池设置或2)客户端CPU运行高时。
IOCP:(忙碌=1,空闲=999,最小值=1,最大值=1000),工作者:(忙碌=2,空闲=8189,最小值=1,最大值=8191)和IOCP:(忙碌=1,空闲=999,最小值=1,最大值=1000),工作人员:(忙碌=3,Free=8188,Min=1,Max=8191)表示您遇到了线程池增长限制问题。您可能想在这里查看解释和建议:https://gist.github.com/JonCole/e65411214030f0d823cb#file-threadpool-md。