Эффективность методов персистентности для большого хранилища кэша asp.net

Проблема HTTPS довольно распространена, и ее можно решить, написав приведенный ниже код в wp-config.php

if (isset(

Проблема HTTPS довольно распространена, и ее можно решить, написав приведенный ниже код в wp-config.php

[110]

Надеюсь, что это решит вашу проблему.

SERVER["HTTP_X_FORWARDED_PROTO"] ) && "https" ==

Проблема HTTPS довольно распространена, и ее можно решить, написав приведенный ниже код в wp-config.php

[110]

Надеюсь, что это решит вашу проблему.

SERVER["HTTP_X_FORWARDED_PROTO"] ) {

Проблема HTTPS довольно распространена, и ее можно решить, написав приведенный ниже код в wp-config.php

[110]

Надеюсь, что это решит вашу проблему.

SERVER["HTTPS"] = "on"; }

Надеюсь, что это решит вашу проблему.

6
задан keithwarren7 6 January 2009 в 03:03
поделиться

4 ответа

Вы являетесь лучшими прочь для создания многих, меньших объектов в кэше, чем создать меньше, большие объекты. Вот обоснование:

1) Если Ваши данные будут маленькими, то количество объектов в кэше будет относительно небольшим, и это не будет иметь никакого значения. Выборка единственных объектов от кэша легче, чем выборка словаря и затем выборка объекта из того словаря, также.

2) После того как Ваши данные становятся большими, кэш может использоваться для управления данными интеллектуальным способом. HttpRuntime. Объект кэша использует Последний использованный (LRU) алгоритм для определения который объекты в кэше истечь. Если у Вас будет только небольшое количество высоко используемых объектов в кэше, то этот алгоритм будет бесполезен. Однако, если у Вас есть много меньших объектов в кэше, но 90% из них не используются ни в какой данный момент (эвристика очень общего использования), затем алгоритм LRU может гарантировать, что те объекты, которые видят, что активное использование остается в кэше при выселении менее используемых объектов для обеспечения достаточной комнаты, остаются для используемых.

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

9
ответ дан 9 December 2019 в 22:41
поделиться

Мы создали приложение, которое использует Кэширование для хранения всех ресурсов. Приложение многоязычно, таким образом, для каждой маркировки в приложении у нас есть по крайней мере три перевода. Мы загружаемся (Маркировка, Культура) комбинация когда сначала необходимый и затем истекаем она от кэша, только если она была изменена и администратор в базе данных. Этот сценарий работал отлично, даже когда кэш содержал 100 000 объектов в нем. Мы только заботились для конфигурирования кэша и политик истечения, таким образом что мы действительно преимущество Кэша. Мы используем без истечений, таким образом, объекты кэшируются, пока рабочий процесс не сбрасывается или пока объект намеренно не истекает. Мы также заботились для определения домена для значений ключей в таком способе однозначно определить маркировку в определенной культуре с наименьшим количеством количества символов.

1
ответ дан 9 December 2019 в 22:41
поделиться

Я собираюсь предположить, что Вы рассмотрели все последствия данных, изменяющихся от многочисленных пользователей и как это будет влиять на кэшированные данные с точки зрения обработки противоречивых данных. Кэширование действительно только предназначено, чтобы быть сделанным на reletively статических данных.

С точки зрения эффективности я предположил бы, что при использовании сериализации .NET правильно, Вы собираетесь извлечь выгоду из того, чтобы хранить данные в кэше в форме больших введенных сериализированных наборов, а не отдельных базовых типов.

С точки зрения обслуживания это также было бы лучшим подходом, поскольку можно создать объект со строгим контролем типов представить данные и сериализацию использования для кастинга его между кэшем и объектом продавца/клиента.

0
ответ дан 9 December 2019 в 22:41
поделиться

Кэш ASP.NET использует свой собственный словарь, настолько использующий его словарь для определения местоположения словаря, чтобы сделать, поиски для получения объектов кажутся менее, чем оптимальными. Словари используют хеш-таблицы, который является о самом эффективном поиске, который можно сделать. Используя Ваши собственные словари просто добавил бы больше служебное, я думаю. Я не знаю об убывающей доходности в отношении хеш-таблиц, но я думаю, что это было бы с точки зрения размера ресурса хранения, не время поиска.

Я интересовался бы тем, что делает Ваше задание легче. Если наличие более организованного Кэша сделает Ваше приложение легче понять, отладить, расшириться, и поддержать затем я сделал бы это. Если бы это делает те вещи более сложными затем, я не сделал бы этого.

И как nullvoid упомянутый, это все предполагает, что Вы уже исследовали большие последствия кэширования, которые включают измерение увеличения производительности по сравнению с хитом производительности. Вы говорите о хранении партий и большого количества объектов, и это подразумевает большой трафик кэша. Я только сохранил бы что-то в кэше, что можно измерить увеличение производительности от выполнения так.

1
ответ дан 9 December 2019 в 22:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: