Это будет очень сильно зависеть от конфигурации сервера, на котором вы размещаете свое приложение. Перво-наперво, не беспокойтесь, что вы потеряете память о себе на виртуальном хостинге Ваш провайдер закроет ваше приложение задолго до того, как использование памяти станет больше, чем предопределенный порог.
Что касается сессии, есть несколько вещей, которые следует учитывать. Режим состояния сеанса и количество узлов, на которых работает ваше приложение. Например, если вы используете состояние сеанса в памяти по умолчанию и запускаете свое приложение на нескольких серверах (webfarm), то каждый узел будет иметь свои собственные данные сеанса в памяти. Это опасно, потому что давайте предположим, что пользователь выполняет свой первый запрос на узле A, а некоторые данные хранятся в сеансе, а второй запрос обслуживается узлом B. Теперь, поскольку сеанс был сохранен в памяти узла A, второй запрос не будет выполнен. потому что он не сможет найти данные сеанса. В этом случае вы должны рассмотреть возможность использования режима хранения сеанса вне процесса.
Что касается кеширования, если вы хотите оптимизировать его, рекомендуется использовать выделенный сервер (ы) кеша, а не хранить его в памяти веб-серверов.