Мне приходится иметь дело с классом, который загружается за 2-3 минуты. Этот объект находится на стороне сервера проекта silverlight / ASP / WCF. После загрузки этот объект будет содержать список из 5 000 000 объектов меньшего размера, который будет использоваться для выполнения некоторых вычислений.
Пользователи не возражают ждать 2 или 3 минуты при загрузке приложения, но они не хотят ждать снова каждый раз, когда вычисляют что-то.
Мне бы хотелось, чтобы вы указали мои параметры.
Вариант A: сохранить большой объект в переменной сеанса. Некоторые люди утверждают, что переменные сессии являются ядом ... особенно при использовании с большим объектом. Это действительно настолько плохо?
Вариант B: загрузить большой объект при запуске сервера, а затем найти способ совместно использовать или дублировать этот объект между сеансами
Вариант C (этот вариант будет работать ... но он не идеален): создайте второй объект, который скопирует 5 000 000 объектов из моего класса, отнимающего много времени, и затем отправит его на клиентскую сторону. Однако это решение не является идеальным, поскольку эти 5 000 000 объектов представляют собой разумные данные, которые не должны быть доступны «как есть» на стороне клиента.