Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
Встречаю этот совет в каждом букваре. Но как это сделать практически? Ну для своих обьектов - это само собой, никому и не придет в голову гонять все это на клиента. Но для большинства стандартных контролов, раздувающих ViewState до неприличия я вижу ТОЛЬКО свойство EnableViewState=True/False. Это как-то можно в WebConfig или где-то еще задать? Можно как-то заставить стандартные контролы (ну те же деревья) хранить свою состояние не во ViewState, а в Session? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 16:04 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
Да, конечно, можно хранить в Session - отключаете EnableViewState для контрола, а объект храните в Session и обращаетесь в ней каждый раз когда надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 17:21 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
Ну этот путь понятен. Слишком много писать кода самому - уж больно тупые контролы получаются. Плюс конечно AutoPostBack по каждому щелчку... Я думал, может есть какой-то ЦЕНТРАЛЛИЗОВАННЫЙ механизм для всех контролов приложения. Ведь ничто не мешает среде ASP2 САМОЙ записывать состояние контролов не в HTML-поток, а в SESSION. Если АВТОМАТИЧЕСКАЯ поддержка такого способа сохранения состояния контролов не реализована - это ж явный баг и органиченность среды... Вот в моем случае Web-сервер имеет 8 ГБ памяти, которая просто никак и никогда не заполняется даже не пару процентов, почему ж это все должно гулять бестолку, а вместо этого я должен целые километры XML BIN64 с состояниями разргужать на клиента в каждом WebResponse а потом их еще и принимать и обрабатываит в каждом WebRequest... Ну что за маразм... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 18:24 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
авторЕсли АВТОМАТИЧЕСКАЯ поддержка такого способа сохранения состояния контролов не реализована - это ж явный баг и органиченность среды... <off> ИМХО что мешает сменить среду разработки... я как непосмотрю у тебя вечные траблы и виноваты в этом никто иной как MS и их среда разработки... и вот, я начинаю думать - может у одной из сторон - ты и MS - действительно есть проблемы... и прихожу к выводу что проблемная сторона - это не MS ;) </off> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 18:40 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
мда, это что ж получаеца, каждое свойство контрола хранить в сессии? Это ж сервер еб..ца так может от такой нагрузки то! Да и нафиг такое вообще надо? 95% свойств контрола вообще нет необходимости сохранять между постбэками и прихожу к выводу что проблемная сторона - это не MS тут позволю себе не согласица. Контролы MS ИМХО действительно немного туповаты. Например, возьмем банальный CheckBox. Посмотрел я на его метод OnPreRender и тихо заплакал. Ну нахрена скажите мне пожалуйста там стоит Page.RegisterRequiresPostBack(this);?! - это ж никакое отключение ViewState даже на самом высшем уровне (eg Page) не поможет, и распухать он oт такой регистрации будет неплохо. Мы, например, разработали свой собственный Framework нужных нам контролов с довольно серъезной поддержкой на стороне клиента. И ни в одном случае не использовали стандартный контрол от мелкомягких, что позволило значительно сократить размер ViewState. Мы пошли дальше - в базовом классе нашей Page на рендере стоит проверка на предмет использования контролов от MS и если такой имееца, то девелопера страшно ругают exception'ом с указанием того, какой контрол нужно использовать взамен. Это було сделано чисто для новопришедших ну и конечно под DEBUG. PS: это конечно мое большое ИМХО, но контролы от MS могут удовлетворить только, не в обиду будет сказано, начинающих или не особо придирчивых профессиноалов :). _______________________________________________________ Never ask users what they want, or they'll tell you. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 19:46 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
Лиман Артёммда, это что ж получаеца, каждое свойство контрола хранить в сессии? Это ж сервер еб..ца так может от такой нагрузки то! Да и нафиг такое вообще надо? 95% свойств контрола вообще нет необходимости сохранять между постбэками и прихожу к выводу что проблемная сторона - это не MS тут позволю себе не согласица. Контролы MS ИМХО действительно немного туповаты. Например, возьмем банальный CheckBox. Посмотрел я на его метод OnPreRender и тихо заплакал. Ну нахрена скажите мне пожалуйста там стоит Page.RegisterRequiresPostBack(this);?! - это ж никакое отключение ViewState даже на самом высшем уровне (eg Page) не поможет, и распухать он oт такой регистрации будет неплохо. Мы, например, разработали свой собственный Framework нужных нам контролов с довольно серъезной поддержкой на стороне клиента. И ни в одном случае не использовали стандартный контрол от мелкомягких, что позволило значительно сократить размер ViewState. Мы пошли дальше - в базовом классе нашей Page на рендере стоит проверка на предмет использования контролов от MS и если такой имееца, то девелопера страшно ругают exception'ом с указанием того, какой контрол нужно использовать взамен. Это було сделано чисто для новопришедших ну и конечно под DEBUG. PS: это конечно мое большое ИМХО, но контролы от MS могут удовлетворить только, не в обиду будет сказано, начинающих или не особо придирчивых профессиноалов :). _______________________________________________________ Never ask users what they want, or they'll tell you. Интересна вот финансовавая подплека соззлания собственного FW. Вы сделали свой FW c с довольно серъезной поддержкой на стороне клиента , чтобы разгрузить сервер ? Не проще ли купить, например, HP ProLiant DL380 R04 за 5К , получить вменяемое быстродействие и не тратить время на создание своего FW ? Если ваш FW создавало 5 программистов с зарплатой в 1К в течении месяца хоты бы, то выгода от своего FW имхо очень условна. Еcли поставить enableviewstate=false, то viewstate cокращается до минимуму, зачем его сводить к нулю ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 22:25 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
to Лиман Артём мне глубоко и надолго на то, сколько это всё вам стоило, но лично от тебя я не слышал ниодного упрёка в адрес MS (до сего дня), хотя оказывается вы там зашли в такие дебри как свой FW ;) просто нужно было - закатали рукава и сделали - не критикуя ни среду разработки ни MS... P.S. Лиман Артёмтут позволю себе не согласица не согласиться с чем, с тем что из двух сторон MS vs vbnet2000 - баллы в пользу MS ? P.P.S. Лиман АртёмКонтролы MS ИМХО действительно немного туповаты. просто вы не умеете их готовить... ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 22:41 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Я рискну предположить,что нормальная РАЗВИТАЯ Web-среда должна была бы не только уметь хранить состояния контролов в SESSION, но даже где-нибудь в MSDE, раз уж он вошел стандартным компонентом в Aplication Server наряду с IIS... А насчет того, что для сервера хранение этих ViewState будет нереально - замечу, что MSDE с парой гиг памяти ЛЕГКО обслуживает ТЫСЯЧИ достаточно веских запросов в секунду (ну при правильной организации этого дела конечно). Это что касается ВСТРОЕННОЙ поддержки хранения ViewState скажем в MSDE, то же самое хранение этих ViewState можно организовать и в каком-то ином более специ ализированном XML-кеширующем механизме. Тут, при всем уважении к VladGrig - речь идет не о сравнении VBNET2000 vs MS, а О НЕДОСТАТОЧНОЙ НЕПРОДУМАННОСТИ КОНЦЕПЦИИ ASP.NET, недоработанности ее, сырости, несмотря даже на огромную рекламную шумиху, поднятую богатейшим человеком планеты по поводу этого своего продукта... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 23:10 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
авторТут, при всем уважении к VladGrig Взаимно, с неменьшим уважением... P.S. С одной стороны: автор Странное сравнение компании, в которой трудится 41 тысяча программистов с ОДНИМ программистом , который удивляется то есть чуство МЕРЫ всё таки присутствует ;) С другой стороны: авторЯ рискну предположить,что нормальная РАЗВИТАЯ Web-среда должна была бы не только уметь хранить состояния контролов в SESSION, но даже где-нибудь в MSDE, раз уж он вошел стандартным компонентом в Aplication Server наряду с IIS... авторО НЕДОСТАТОЧНОЙ НЕПРОДУМАННОСТИ КОНЦЕПЦИИ ASP.NET, недоработанности ее, сырости, несмотря даже на огромную рекламную шумиху, поднятую богатейшим человеком планеты по поводу этого своего продукта... Абсолютное отсутствие здравого смысла... Мой вывод: MS нехватает одного ведущего и координируещего программера - с ником vbnet2000 P.P.S. кстати, только перед отправкой заметил vbnet2000 О НЕДОСТАТОЧНОЙ НЕПРОДУМАННОСТИ КОНЦЕПЦИИ ASP.NET недостаточная непродуманность == достаточная продуманность ... LOL даже в этом умудрился намутить ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 00:35 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
Не увидел у вас аргумента, почему ИМЕННО отсутствие умения ASP.NET хранить состояния контролов в MSDE является достоинством этой среды, а не ее недостатком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 00:54 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
А еще у меня остались до сих пор пару актуальных и нерешенных практических проблем - если идеи есть - подскажите: http://www.sql.ru/forum/actualthread.aspx?tid=300888 http://www.sql.ru/forum/actualthread.aspx?tid=300863 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 00:57 |
|
||
|
Как понять рекомендацию хранить крупные обьекты не во ViewState, а в Session
|
|||
|---|---|---|---|
|
#18+
big-dukeИнтересна вот финансовавая подплека соззлания собственного FW. не переживай, себе в убыток мы бы ничего не делали бы ;) big-duke Вы сделали свой FW c с довольно серъезной поддержкой на стороне клиента , чтобы разгрузить сервер ? для того, что бы клиент только рот раскрывал, когда видел перед собой наши разработки :) big-dukeЕсли ваш FW создавало 5 программистов с зарплатой в 1К в течении месяца хоты бы, то выгода от своего FW имхо очень условна. ну вообщето не один месяц, а уже около года, и дальше продолжает развиваца, но и зарплата не в 1к (в нашем городе таких зарплат не бывает ) big-dukeЕcли поставить enableviewstate=false, то viewstate cокращается до минимуму, зачем его сводить к нулю ? к нулю viewstate ты никогда не сведешь. Даже нам такое не под силу А вот минимизировать его использование нам всё таки удалось. vladgrigне согласиться с чем, с тем что из двух сторон MS vs vbnet2000 - баллы в пользу MS? да нет конечно, позицую vbnet2000 я не разделяю. Но то что MS грешная - это точно ) vladgrigпросто вы не умеете их готовить... ;) вообщето у нас есть проэкты, которые написаны на чистом asp.net, но честно говоря они и рядом не стоят с тем, что у нас есть сейчас. PS: я абсолютно не настаиваю на том, что контролы от MS вообще нельзя использовать, думаю процентов 90% команд пишут проэкты с их использованием и абсолютно удовлетворены. И вообще я не сторонник подобных дебатов - кто на чем пишет - это его личное дело. Как по мне - главное, что бы за это платили :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 12:25 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=33782014&tid=1392361]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 398ms |

| 0 / 0 |
