Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Web Farm / 7 сообщений из 7, страница 1 из 1
15.07.2013, 15:58
    #38331564
asdsasadsad
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
Кто-нибудь писал приложения asp.net под web farm

Чем вот это грозит? Что-то непонять...

http://www.c-sharpcorner.com/uploadfile/gopenath/page107182007032219am/page1.aspx
Make sure objects are serializable. Here in state server session gets serialized and stored in memory in a separate process (aspnet_state.exe). Also if you try to store instance of a class that is not marked as serializable into a session variable, the request returns without an error. However, Asp.net actually fails to save the session data and blocks subsequent requests in the same session. (Because the class is not marked as serializable).

А как убедиться -то, что все объекты serializable?
...
Рейтинг: 0 / 0
15.07.2013, 16:22
    #38331612
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
asdsasadsad,

А этот самый маке шуре не перевести на русский?
...
Рейтинг: 0 / 0
15.07.2013, 16:28
    #38331625
asdsasadsad
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
ShSergeasdsasadsad,
А этот самый маке шуре не перевести на русский?

Вы вопрос посмотрите:
А как убедиться -то, что все объекты serializable?

Добавлю. Есть большой проект его надо переложить
на веб-фермы с минимумом исправлений
...
Рейтинг: 0 / 0
15.07.2013, 17:30
    #38331746
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
asdsasadsadА как убедиться -то, что все объекты serializable?
Пометить свои типы атрибутом Serializable.


asdsasadsadКто-нибудь писал приложения asp.net под web farm
Чем вот это грозит? Что-то непонять...
Зависит от архитектуры приложения. Не всякое приложение можно легко и быстро перенести в ферму. Если используется сессии, то может понадобиться использовать state server или SQL Servеr для хранения сессии. Если используется объект Cache, то может понадобиться распределенный кеш. Например, AppFabric или memcached. Если объект Application используется для хранения общих данных, то это придется переписать т.к. эти данные будут своими для каждого сервера. Надо пробовать и смотреть какие проблемы возникают. И сразу подумай о процессе развертывания приложения.
...
Рейтинг: 0 / 0
15.07.2013, 18:54
    #38331871
asdsasadsad
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
bazileasdsasadsadА как убедиться -то, что все объекты serializable?
Пометить свои типы атрибутом Serializable.

asdsasadsadКто-нибудь писал приложения asp.net под web farm
Чем вот это грозит? Что-то непонять...
Зависит от архитектуры приложения. Не всякое приложение можно легко и быстро перенести в ферму. Если используется сессии, то может понадобиться использовать state server или SQL Servеr для хранения сессии. Если используется объект Cache, то может понадобиться распределенный кеш. Например, AppFabric или memcached. Если объект Application используется для хранения общих данных, то это придется переписать т.к. эти данные будут своими для каждого сервера. Надо пробовать и смотреть какие проблемы возникают. И сразу подумай о процессе развертывания приложения.
Насколько я понял если исп-ся стейтсервер, то достаточно сериалайзибле проставить? Так?
А как отловить ошибки которые возникают с теми объектами для которых не проставили
...
Рейтинг: 0 / 0
16.07.2013, 00:45
    #38332088
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
asdsasadsadНасколько я понял если исп-ся стейтсервер, то достаточно сериалайзибле проставить? Так?
Более точно будет так - если используется режим сессии отличный от InProc, то все сессионые данные должны иметь атрибут Serializable.

asdsasadsadА как отловить ошибки которые возникают с теми объектами для которых не проставили
Просмотреть код или запустить приложение и заставить выполняиться все участки кода где идет запись в сессию.
...
Рейтинг: 0 / 0
21.07.2013, 14:33
    #38338186
Sergey Ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Web Farm
asdsasadsadКто-нибудь писал приложения asp.net под web farm
У Вас не должно быть проблем. К тому, что тут упомянули - надо добавить в web.config пару установок для "machineKey" чтобы все было одинаково.

Насчет сессий Вам все сказали - моя практика показала, что session state на файл сервере работает быстрее и надежнее чем с SQL Server (нет проблем с блокировкаи и deadlocks когда очень много requests)... Кроме того некоторые платные пакеты тоже имеют такую возможность...

Насет cache Вам упомянули, но надо помнить что всякий распределенный cache медленнее чем локальный и очень критичный к объему данных. Так что должен быть компромис часть хранить в shared а часть в local.... Остается только централизовать обновление local cache когда это надо (сделать это очень просто)...

Паники насчет [serializable] я не понял - любой объект помещаемый в session должен иметь этот attribute если session not InProc...

А вообще следуйте общим рекомендациям - как можно меньше помещайте в cache и sessions, создавайте Ваши объекты так чтобы в них было только самое необходимое. В этом случае Ваше приложение будет быстрым и без Farm... А то у нас 8*CPU * 64Gb * 24 сервера в Farm и если бы мы следовали общим рекомендациям вполне могли бы обойтись и 4 серверами... Но это уже тема другого топика...

Good luck!
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Web Farm / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]