Использование ASP.NET MVC 3 оперативной памяти и кэширование вывода (VariableCustom) - PullRequest
0 голосов
/ 07 сентября 2011

У меня проблема с сайтом, который является новым проектом, ~ 500 уникальных посетителей в день.Некоторые из этих посетителей заходят на сайт в одно и то же время, и я сейчас пытаюсь сообщить об этом 100 посетителям.

Использование оперативной памяти w3wp.exe начинается с ожидаемого, когда я посмотрел состояние сервера всего несколько часов спустя.Использование ОЗУ превышает 500M.

Поэтому я решил кэшировать вывод и улучшить производительность.(если у вас есть какие-либо предложения, совет для меня по поводу проблемы с оперативной памятью, пожалуйста, дайте мне знать, я новичок в mvc 3)

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

    public override string GetVaryByCustomString(HttpContext context, string custom)
    {
        switch (custom)
        {
            case "UICulture":
                return context.Request.Cookies["CurrentUICulture"].Value.ToString();

            default:
                return "";
        }
    }

    and this controller's action.

    [OutputCache(Duration = 60, VaryByParam = "none", VaryByCustom="UICulture")]
    public ActionResult Uniques() {
          return View(ukList);
    }

Это метод, который я использовал для переопределения, но он не работает.

1 Ответ

2 голосов
/ 10 января 2012

.NET Framework займет объем оперативной памяти, который он считает лучше кэшировать данные и страницы.Кэширование вывода, вероятно, не повлияет на объем оперативной памяти, которую занимает приложение.Если никакие другие потоки на вашем сервере не запрашивают ОЗУ, .NET Framework не выдаст ее в систему, так как это повышает производительность, когда на вашей машине достаточно ОЗУ.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...