В последние дни я пытаюсь оптимизировать свой веб-сайт из-за низкой производительности, вызванной кешем Redis, когда у меня пик подключения.
Я использую Redis версии 1.2.6 и установил abortConnect=false в строке подключения.
вот как я могу подключиться к Redis:
private static readonly Lazy<ConnectionMultiplexer> LazyConnection
= new Lazy<ConnectionMultiplexer>(() =>
ConnectionMultiplexer.Connect(GetRedisConnectionString()));
private static readonly Lazy<ConnectionMultiplexer> LazyConnection
= new Lazy<ConnectionMultiplexer>(() =>
{
var connection = ConnectionMultiplexer.Connect(GetRedisConnectionString());
connection.PreserveAsyncOrder = false;
//connection.TimeoutMilliseconds
return connection;
});
В global.asax я изменил минимальные потоки, как это предлагается в этой статье http://stackexchange.github.io/StackExchange.Redis/Timeouts
int workerThreads = 500;
int iocpThreads = 500;
System.Threading.ThreadPool.SetMinThreads(workerThreads, iocpThreads)
Но у нас все еще есть ошибка, подобная этой, в журнале:
Timeout performing GET campaign_url_728566_288, inst: 19, mgr: Inactive,
err: never, queue: 7, qu: 0, qs: 7, qc: 0, wr: 0, wq: 0, in: 0, ar: 0,
clientName: RD00155D881345, serverEndpoint:
Unspecified/**********************, keyHashSlot: 6859, IOCP:
(Busy=0,Free=1000,Min=500,Max=1000), WORKER:
(Busy=25,Free=8166,Min=500,Max=8191)
or
Timeout performing GET campaign_url_728566_288, inst: 7, mgr: Inactive, err:
never, queue: 24, qu: 0, qs: 24, qc: 0, wr: 0, wq: 0, in: 4488, ar: 0,
clientName: RD00155D881345, serverEndpoint: Unspecified**********,
keyHashSlot: 6859, IOCP: (Busy=0,Free=1000,Min=500,Max=1000), WORKER:
(Busy=40,Free=8151,Min=500,Max=8191)
Теперь я заметил, что максимальное количество подключений, созданных и отображаемых на портале, составляет не более 20, хотя я ожидаю, что их будет больше во время большого объема.
Есть ли какие-либо настройки для увеличения количества подключений от ConnectionMultiplexer? Или проблема связана с размером кэша (в настоящее время стандарта C1) или из-за ограниченной пропускной способности?