powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как и где организовать хранение глобальных переменных?
25 сообщений из 52, страница 2 из 3
Как и где организовать хранение глобальных переменных?
    #37970571
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973,
Игорь, ты только не обижайся, вот ты говоришь, что господа не любят хранить в сессиях переменные,
А какие переменные????????????..( пауза), я даже ума не приложу, что там можно хранить..
строки, шапки таблиц, данные таблиц, дык все уже давно пользуются орм,( дата сет прикладная банальщина)
орм сама разгуливает противоречивость, многоуровневое кеширование, и тд.
что ты жалеешь базу данных, их и для этого и придумывали что бы хранить данные,Mysql по дефолту держит 800 сессий.
никого она не держит с обращениями ( если запрос гут), по мне так партикулярно- правильно-неоптимизирование приложение
лучше, чем этот иллюзион, и не называй их глобальными..
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37970575
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973, Вы объясните зачем знать о Session проекту, отвечающему за работу с БД (выборка, запись, бизнес логика)? У меня на работе в солюшине 480 проектов, но такого архитектурного новшества не наблюдается :)
Откройте для себя шаблон декоратор, оберните вызовы репозитория неким CacheDecorator и внутри инкапсулируйте какое угодно кэширование: в сессии, базе, membase и т.п.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37970576
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А так Вы просто нарушаете принципы проектирования. Да, Вам это удобно, а для других - это проблема.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37970580
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно, сессия в прикладном коде - зло дикое :)
Либо общая кеш со всеми вытекающими, либо база данных. Остальное от лукавого.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972298
Игорь1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>ума не приложу, что там можно хранить
1. Как я уже сказал, у меня в Session хранится строка соединения с БД, тк любой юзер может работать с произвольной БД.
2. Помимо UserID у меня в Session хранится еще некоторая информация по текущему юзеру (его роль и др.), а также целиком строка меню, которое настроено админом персонально для каждого пользователя (или роли) системы. Эта строка длиною где-то 1000 символов. Можно каждый раз при загрузке любой страницы обращаться к БД за этим персонализированным меню, а можно скешировать в сессии и не дергать лишний раз базу данных, что я и сделал.
3. Господа, как вы привыкли передавать параметры от странице к странице?
В QueryString в Hidden в Form... А я часто использую для этих целей Session. Переменная создается только на момент перехода к другой странице во время Response.Redirect, после чего сразу уничтожается Session.Remove(...) и память освобождается. Плюс этого подхода, что в QueryString все чисто и аккуратно - ничего лишнего, никакого служебного мусора.

>нарушаете принципы проектирования
Точно. Принципы и они же - догмы.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972386
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИгорь1973, Вы объясните зачем знать о Session проекту, отвечающему за работу с БД (выборка, запись, бизнес логика)?Объясните уже. Именно это я считаю ошибкой проектирования.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972426
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973Как я уже сказал, у меня в Session хранится строка соединения с БД, тк любой юзер может работать с произвольной БД.

А почему бы все возможные строки соедиения с базами не хранить в конфиге (как это делают нормальные люди), а доступ к той или иной базе осуществлять через старндартный механизм разграничения доступа - роли (а не через одно место)?
На кой тут сессия? Еще можно хранить эти строки соединения в базе данных и так же осуществлять, в зависимости от роли, доступ к тем или иным строкам соединения.


Игорь1973Помимо UserID у меня в Session хранится еще некоторая информация по текущему юзеру (его роль и др.), а также целиком строка меню, которое настроено админом персонально для каждого пользователя (или роли) системы.
Мил человек, RTFM что-ли. Какие в зад роли? Срочно читать про механизм стандартного SqlRoleProvider.
Зачем в сессии хранить строку меню, что за бред Открой для себя стандартный механизм профилей, что-ли. Куда не плюнь - везде велосипед, причем без колес...


Игорь1973Господа, как вы привыкли передавать параметры от странице к странице?
В QueryString в Hidden в Form... А я часто использую для этих целей Session.
Изучи стандартные механизмы хранения персональных данных и механизм ролей. Дурь сразу отпадет и начнешь мыслить как человек, а не зомби :)
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972444
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неудержался(
Игорь19731. Как я уже сказал, у меня в Session хранится строка соединения с БД, тк любой юзер может работать с произвольной БД.

чуш полная, а не довод

Игорь1973Можно каждый раз при загрузке любой страницы обращаться к БД за этим персонализированным меню, а можно скешировать в сессии и не дергать лишний раз базу данных, что я и сделал.

для этого есть кеш! а не ваша глупая идея

Игорь1973Помимо UserID у меня в Session хранится еще некоторая информация по текущему юзеру (его роль и др.),

Уже сказали, что надо такое делать через IIdentity и IPrincipal

Игорь1973после чего сразу уничтожается Session.Remove(...) и память освобождается

как же! читаем про CG

Игорь1973..А я часто использую для этих целей Session...

и что? вам говорят что ваше решение остой, а вы на своем стоите и едиственный довод, что только вам удобно. А то что люди говорят, что огребеш потом, не волнует.

Игорь1973Точно. Принципы и они же - догмы.

Судя по вашим мыслям и решенияи - не вам судить про принципы проектирования.

Вывод из всего:
Зачем спрашивали на форуме ?вам сказали как надо - вы не послушали и никаких доводов адекватных. Тупой слив и выброс топика ИМХО. ТС читайте книжки.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972545
Игорь1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Элементарно корзину с покупками интернет магазина можно хранить в Session.
Да, можно и в БД (ну, покричите кто-нибудь, что "нужно!") или еще где-то, а можно и в Session.
И оно не будет много места серверной памяти занимать.
Вообще, я бы сказал, что с приходом твердотельных SSD-дисков в нашу жизнь, понятия памяти оперативной (как бы быстрой) и памяти дисковой, где хранится БД, практически стираются.
Наверное, пока еще это не очевидно, но уже скоро...
Но плюс хранения в Session еще и в том, что все данные в нем автоматически уничтожаются при закритии сессии. И это можно использовать.
Господа, если вам так нравится все стандартное (и SqlRoleProvider и другие классы), ну, так и используете их с удовольствием.
А мне доставляет удовольствие "городить свой огород", писать универсальный код (а не только для MS SQL). Кому-то нравятся стандартный DataGrid, а у меня свой собственный кастом контрол. Или что? Тоже кто-то скажет "так нельзя, потому что не стандартно.."
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972562
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973Элементарно корзину с покупками интернет магазина можно хранить в Session.А можно и в Cookies и в БД. Пробовали на ozon.ru добавить что-то корзину, а потом закрыть браузер, выключить комп, придти на работу и зайти в свою корзину на ozon.ru? Магия! :)

И ответьте таки на вопрос:skyANAИгорь1973, Вы объясните зачем знать о Session проекту, отвечающему за работу с БД (выборка, запись, бизнес логика)?
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972583
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973Элементарно корзину с покупками интернет магазина можно хранить в Session.

Да? а если я вышел покурить..пришел а сессии нет уже. Мне че занового все покупать? Или к примеру злой дядя в админке поставил доступно вместо 5 штук 0 то как бы я уже купить не могу, а в сессии будет висеть!!! или будет каждый раз синхронизировать то что в сесиии и бд?
Игорь1973А мне доставляет удовольствие ...писать универсальный код (а не только для MS SQL).

врядли у вас универсальнее раз вам пофигу на общепринятые решения

Игорь1973Господа, если вам так нравится все стандартное (и SqlRoleProvider и другие классы), ну, так и используете их с удовольствием

Точно смотрели инфу про IIdentity и IPrincipal? Там как раз то что вы любите - реализовать все самому по интерфейсу

Игорь1973Кому-то нравятся стандартный DataGrid, а у меня свой собственный кастом контрол.

если вам не хватает стандартного вообще как бы правильно.

Игорь1973Тоже кто-то скажет "так нельзя, потому что не стандартно.."

Вы не правильно трактуете, вам не запрещают, пишите.НО толпа людей вам говорит как лучше с точки зрения архитектуры и это доказано практикой кучей людей, а вы уперлись вам удобно, что вообще не довод. Прислушаетесь или нет это это ваш выбор, но не надо лечить людей что это удобно.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972602
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuне надо лечить людей что это удобноКаждый дрочит как он хочет, вам-то что? Про баб рассказали, и ладно.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972622
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyКаждый дрочит как он хочет, вам-то что? Про баб рассказали, и ладно.

ересь просто) окей. вы правы : "Каждый дрочит как он хочет"
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972669
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы не сказал, что эта ересь является вредной. Изобретая велосипеды, пусть даже без колес, человек получает опыт, опыт изобретения, который он не получит, читая мануалы. У него будет живое понимание, как что работает, пусть оно и устарело. Наигравшись с велосипедами, он неизбежно придет к правильным решениям, когда велосипеды не смогут справиться к очередной задачей, но за плечами-то у него будет не вакуум. А если представить пустоголового, не уверенного в себе школьника с велосипедом, который подвернулся под руку какому-нибудь упоротому фанатику типа МСУ, то он бросит свой велосипед и ринется в омут какого-нибудь мвц не имея опыта изобретений. В результате получится куча мвц-говнокода, который растопчет и опплюет тот же фанатик. Если школьник не сдастся, то он научится писать нормальный код, но без собственного опыта это будет на уровне "намылить, смыть, повторить", никакого творчества.

Новые и правильные технологии защищают от тормозного старья, но не от от говнокода. От него защищает опыт, в том числе и еретический.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972682
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,

Модератор: При всём уважении, не надо нехорошие слова писать.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37972868
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, увлекся.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973246
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973> Field в базе уже не Exists а в сесси он еще да Exists, и наоборот
Все давно продумано, и это тоже.

А не лучше ли зависеть от одного источника данных, а не решать созданные самому себе проблемы?

зы
я тоже использую сессию, там где считаю нужным, но таких случаев почему то мало )
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973290
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь1973Можно каждый раз при загрузке любой страницы обращаться к БД за этим персонализированным меню, а можно скешировать в сессии и не дергать лишний раз базу данных, что я и сделал.

Не стоит бояться обращаться к БД, она специально для этого предназначена :) Сократить количество запросов к БД - это хорошее дело, но когда они действительно сокращаются, а не переводятся на другие способы хранения. Посоветовал бы на досуге посмотреть, как устроено хранилище сессии (SessionStateStoreProviderBase), после этого ты бы, наверное, подумал, стоит ли туда лишний раз что-то заносить :)
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973557
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyЯ бы не сказал, что эта ересь является вредной. Изобретая велосипеды, пусть даже без колес, человек получает опыт, опыт изобретения, который он не получит, читая мануалы.
Работая в нормальной команде профессионалов, а не с безумцами типа тебя, человек гораздо быстрее получает необходимый опыт и правильное мышление, заложенное в нужном направлении. Такой специалист представляет гораздо больший интерес со стороны работодателя, а так же более высоко ценится в финансовом соотношении.

AntonariyУ него будет живое понимание, как что работает, пусть оно и устарело. Наигравшись с велосипедами, он неизбежно придет к правильным решениям, когда велосипеды не смогут справиться к очередной задачей, но за плечами-то у него будет не вакуум.
Очередные безумные сказки. Какой вменяемый работодатель даст «играться» и предоставлять возможность принимать неправильные решения? Если речь о самостоятельных играх на дому, то с таким опытом далеко не уедешь. Только на реальных проектах программист получит реальный скил. Все остальные домашние какашки типа курсовых и прочих хеллоувордов - лишь проходной билет в реальный деаеломпент на позицию джуниора, не более того. Так что не фантазируй тут.

AntonariyА если представить пустоголового, не уверенного в себе школьника с велосипедом, который подвернулся под руку какому-нибудь упоротому фанатику типа МСУ, то он бросит свой велосипед и ринется в омут какого-нибудь мвц не имея опыта изобретений. В результате получится куча мвц-говнокода, который растопчет и опплюет тот же фанатик.
Есть другой вариант - читать книги, читать блоги, читать форумы. Когда будет понимание, что делаешь, тогда можно выходить в онлайн и вещать правду и прислушиваться или не прислушиваться к советам. А когда очередной пустоголовый инопланетянен начинает доказывать какую-то шизофреническую дурь, не читая даже того, что ему пишут - далеко он не уйдет, а лишь увязнет в своем болоте. Следующее болото будет мало чем отличаться от первого. Такое мясо мало интересно рынку, вот они сидят на удаленке за копейки и клепают странички-визитки, ибо на большее они не способны.

AntonariyЕсли школьник не сдастся, то он научится писать нормальный код, но без собственного опыта это будет на уровне "намылить, смыть, повторить", никакого творчества.

Новые и правильные технологии защищают от тормозного старья, но не от от говнокода. От него защищает опыт, в том числе и еретический.
Сам школьник априори не научиться писать нормальный код, выйди из сумрака. Только участие в реальных проектах с вменяемой командой из него выйдет толк.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973564
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ...Только участие в реальных проектах с вменяемой командой из него выйдет толк.
А может быть реальнвй проект без "вменяемогй команды", типа МСУ?
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973573
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeМСУ...Только участие в реальных проектах с вменяемой командой из него выйдет толк.
А может быть реальнвй проект без "вменяемогй команды", типа МСУ?
Задай вопрос по-русски.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973587
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

Я о том говорю, что любой проект, по большому счёту, делает только один человек. Ну, конечно, всякие финтифлюшечки и прочее. Но ведь это же так?
Я уже где-то на форуме писал, что в фирме ИБМ провели эксперимент.
Было выделено три бригады, которые независимо друг от друга занимались одним и теи же.
1. Демократическая бригада,
2. Авторитарная,
3. Хирургическая.
В демократической бригаде все участники равны. В Авторитарной есть начальник, который даёт задание подчинённым. В хирургической - один делает всё, а остальные только помогают всякими принеси-подай.
Лучше всего, с большим отрывом, справилась хирургическая бригада, потом была авторитарная. А демократическая - на последнем месте.
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973607
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge,
Да кто ж спорит, автор может быть один, ну и плюс соавторы.
Но автор должен быть вменяем, с точки зрения этнопсихологи, почему тут этно, могу объяснить позже.
А тут автор превозносит чушь, и что самое удручающее - безапелляционно.
Вообще надо было топик создать с темой, ( использовать ли сессии ?)
Мы в свете этого топика не коснулись таких моментов, как расширяемость приложения, конкурентный доступ ( сессия сидит на локе), где хостер хранит сессию , размер самой инициализированной сессии по дефолту.
Вот и выходит что сессия это атавизм и зло.
зы а на счет всей этой галиматьи
Он то плакал, то смеялся, то щетинился как еж,
Он над нами издевался. Ну сумасшедший, что возьмешь?(с)
зы 2 МСУ, не перебарщивай..
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973619
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeМСУ,

Я о том говорю, что любой проект, по большому счёту, делает только один человек. Ну, конечно, всякие финтифлюшечки и прочее. Но ведь это же так?
Нет, это не так. Если ты о проектах «Здравствуй, мир», то возможно.
ShSerge
Я уже где-то на форуме писал, что в фирме ИБМ провели эксперимент.
Было выделено три бригады, которые независимо друг от друга занимались одним и теи же.
1. Демократическая бригада,
2. Авторитарная,
3. Хирургическая.
В демократической бригаде все участники равны. В Авторитарной есть начальник, который даёт задание подчинённым. В хирургической - один делает всё, а остальные только помогают всякими принеси-подай.
Лучше всего, с большим отрывом, справилась хирургическая бригада, потом была авторитарная. А демократическая - на последнем месте.
Демократии не должно быть - в проектной команде не могут быть все равны. Почитай про состав команд и проектные роли по методологиям MSF, RUP, и т.д.
Так что глупости ты пишешь...
...
Рейтинг: 0 / 0
Как и где организовать хранение глобальных переменных?
    #37973624
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ
...
Рейтинг: 0 / 0
25 сообщений из 52, страница 2 из 3
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как и где организовать хранение глобальных переменных?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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