Максимальная длина ключей кеша в объекте HttpRuntime.Cache?

Мы используем API HttpRuntime.Cache в ASP.NET для кэширования данных, полученных из базы данных.

Для этого конкретного приложения наши запросы к базе данных содержат много параметров, поэтому наши ключи кеша выглядят примерно так:

table = table1; param1 = somevalue1; param2 = somevalue2; param3 = somevalue3; param4 = somevalue4; param5 = somevalue5; param6 = somevalue6... и т.д.

Для некоторых запросов у нас так много параметров, что ключ кеша длиной несколько сотен символов.

Мой вопрос: существует ли ограничение на длину этих ключей кеша? Внутри он использует словарь, поэтому теоретически время поиска должно быть постоянным. Однако мне интересно, есть ли у нас потенциал для решения некоторых проблем с производительностью/памятью.

Ответы

Ответ 1

Внутри словарь использует хеш-код ключа, который вы ему даете. Эффективно каждый ключ хранится как целое число.

Вам не о чем беспокоиться.