Re[3]: Может я чего-то не понимаю?!!
От: Jericho113 Украина  
Дата: 05.09.06 07:59
Оценка:
Здравствуйте, AlexGK, Вы писали:

AGK>Cпасибо за ответ. В принципе я уже понял что к чему... Действительно, определенные выгоды есть и весьма ощутимые.

AGK>Другой вопрос во сколько обходится такой подход? Кто-нибудь пробовал замерять? КИнтье линк, если есть, сам я попробую проверить на разных выборках/вставках/апдейтах, о результатах напишу. По идее, конечно, сильной потери производительности не должно быть, если грамотно организовать логику и миимимзировать лишние запросы к базе... но увидим.

Насчет потери производительности по сравнению с ХП ничего сказать не смогу но субъективно — если они и есть то не очень большие.
А вот насчет минимизации запросов к базе и поддержки актуального кеша на сервере приложений это очень важно!!!!
В моей практике было такое что где то в 2-3 раза повышалось быстрота работы вычитки когда не нужно было лезть за
некоторыми данными в табличку.... Если более подробнее, то в БД бух учета для каждой записи в практически каждой
таблице заполнялось еще 2 доп. поля
id пользователя который вствил запись и id того кто менял его. Т.к. работа с БД была активной то на таблицу с учетными записями пользователей была достаточно сильная нагрузка по вычитке. И по этому я решил ее закешировать... Быстрота запросов увеличилась достаточно ощутимо.
Так же было еще с парой таблилц которые внес в кэш. Кэш автоматически обновлялся по нотификации с сервера когда данные в кэшируемой таблице
менялись извне. Вобщем гемороя пока все построил было не так уж и много (но был ) зато потом стало ощутимо легче с быстротой.
Хм.. что то я разговорился сегодя... вобщем такие дела.

---------------------------
Дорогу осилит идущий.
NetDigitally yours ....
Re[4]: Может я чего-то не понимаю?!!
От: denis_krg Казахстан  
Дата: 08.09.06 10:45
Оценка:
Здравствуйте, Jericho113, Вы писали:


J>Насчет потери производительности по сравнению с ХП ничего сказать не смогу но субъективно — если они и есть то не очень большие.

J>А вот насчет минимизации запросов к базе и поддержки актуального кеша на сервере приложений это очень важно!!!!
J>В моей практике было такое что где то в 2-3 раза повышалось быстрота работы вычитки когда не нужно было лезть за
J>некоторыми данными в табличку.... Если более подробнее, то в БД бух учета для каждой записи в практически каждой
J>таблице заполнялось еще 2 доп. поля
J>id пользователя который вствил запись и id того кто менял его. Т.к. работа с БД была активной то на таблицу с учетными записями пользователей была достаточно сильная нагрузка по вычитке. И по этому я решил ее закешировать... Быстрота запросов увеличилась достаточно ощутимо.
J>Так же было еще с парой таблилц которые внес в кэш. Кэш автоматически обновлялся по нотификации с сервера когда данные в кэшируемой таблице
J>менялись извне. Вобщем гемороя пока все построил было не так уж и много (но был ) зато потом стало ощутимо легче с быстротой.
J>Хм.. что то я разговорился сегодя... вобщем такие дела.

Скажи, а какая разница — лежат данные в кэше сервера приложения или в кэше БД? Может быть стоило просто подкрутить что-то в настройках кэша БД? В том же оракле есть возможность закреплять некоторые таблицы в кэше
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: Может я чего-то не понимаю?!!
От: Аноним  
Дата: 08.09.06 15:43
Оценка:
J>В моей практике было такое что где то в 2-3 раза повышалось быстрота работы вычитки когда не нужно было лезть за
J>некоторыми данными в табличку.... Если более подробнее, то в БД бух учета для каждой записи в практически каждой
J>таблице заполнялось еще 2 доп. поля
J>id пользователя который вствил запись и id того кто менял его. Т.к. работа с БД была активной то на таблицу с учетными записями пользователей была достаточно сильная нагрузка по вычитке. И по этому я решил ее закешировать... Быстрота запросов увеличилась достаточно ощутимо.
J>Так же было еще с парой таблилц которые внес в кэш. Кэш автоматически обновлялся по нотификации с сервера когда данные в кэшируемой таблице
J>менялись извне. Вобщем гемороя пока все построил было не так уж и много (но был ) зато потом стало ощутимо легче с быстротой.

Что за кэш такой?
Пока он не обработал уведомление от сервера он возвращал неправильные данные?
Сохраняется ли понятие транзакции при наличии такого кэша?
Re[5]: Может я чего-то не понимаю?!!
От: Jericho113 Украина  
Дата: 12.09.06 14:13
Оценка:
Здравствуйте, denis_krg, Вы писали:



_>Скажи, а какая разница — лежат данные в кэше сервера приложения или в кэше БД? Может быть стоило просто подкрутить что-то в настройках кэша БД? В том же оракле есть возможность закреплять некоторые таблицы в кэше


Да вобщем то на первый взгляд разницы никакой нивижу. Можно и так.. Просто выбрали эту модель кэша.
В MSSqlServer есть так же возможность закрепить таблицу — dbcc pintable.

Хотя вобщем то вспоминаю что админ сиквела против был такого подхода. Говорил что в случае если буфер кэша будет меньше чем размер таблицы/таблиц то серваку может быть ооочень плохо вплоть до рестарта.
Так что пришлось сделать кэш на АПП сервере.
NetDigitally yours ....
Re[5]: Может я чего-то не понимаю?!!
От: Jericho113 Украина  
Дата: 12.09.06 14:26
Оценка:
Здравствуйте, Аноним, Вы писали:


А>Что за кэш такой?


Обычный такой себе кэш как кэш...
базируется на
System.Web.Caching.Cache


А>Пока он не обработал уведомление от сервера он возвращал неправильные данные?


Хм.. данные редко меняются и на них так же не очень часто смотрят, восновном для разбора полетов
Но эти данные должны быть! Хотел вначале выкрутится с ленивой загрузкой но потом понял что
проблем будет еще больше.
А>Сохраняется ли понятие транзакции при наличии такого кэша?
Не совсем понял вопрос- понятие транзакции по отношению к чему??
В кэше лежать данные которые не удаляются только модифицируются (неключевые поля)
через админскую часть программы и только несколькими людьми,
а не обычными пользователями.
NetDigitally yours ....
Re[6]: Может я чего-то не понимаю?!!
От: denis_krg Казахстан  
Дата: 12.09.06 16:34
Оценка:
Здравствуйте, Jericho113, Вы писали:


_>>Скажи, а какая разница — лежат данные в кэше сервера приложения или в кэше БД? Может быть стоило просто подкрутить что-то в настройках кэша БД? В том же оракле есть возможность закреплять некоторые таблицы в кэше


J>Хотя вобщем то вспоминаю что админ сиквела против был такого подхода. Говорил что в случае если буфер кэша будет меньше чем размер таблицы/таблиц то серваку может быть ооочень плохо вплоть до рестарта.

J>Так что пришлось сделать кэш на АПП сервере.

Я снова ничего не понимаю. Если таблица такая большая, что может прибить кэш на сервере БД, то те же самые проблемы должны быть, если ее закреплять в кэше на апп-сервере
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: Может я чего-то не понимаю?!!
От: Jericho113 Украина  
Дата: 13.09.06 06:53
Оценка:
Здравствуйте, denis_krg, Вы писали:


_>Я снова ничего не понимаю. Если таблица такая большая, что может прибить кэш на сервере БД, то те же самые проблемы должны быть, если ее закреплять в кэше на апп-сервере


Ну что ж тут непонятного.. на АПП сервере памяти достаточно — а на сервер БД нагрузка ложится достаточно сильная т.к. там работает не только несколько OLTP систем но и к сожалению еще отчеты строятся, и кэш(оперативку) засорять таблицами имхо не очень правильно.

Вот потому и выбрали такой путь.
Никаких тайных замыслов или каких то секретных потусторонних знаний не использовалось

Да и в случае чего рестарт одного АПП сервера будет заметен ну отслилы 50-100 пользователям и то если они в этот момент не медитировали
глядя в монитор а жали кнопки в приложении а если коннект был потерян то приложение его автоматом восстановит.
NetDigitally yours ....
Re[8]: Может я чего-то не понимаю?!!
От: denis_krg Казахстан  
Дата: 13.09.06 13:39
Оценка:
Здравствуйте, Jericho113, Вы писали:

_>>Я снова ничего не понимаю. Если таблица такая большая, что может прибить кэш на сервере БД, то те же самые проблемы должны быть, если ее закреплять в кэше на апп-сервере


J>Ну что ж тут непонятного.. на АПП сервере памяти достаточно — а на сервер БД нагрузка ложится достаточно сильная т.к. там работает не только несколько OLTP систем но и к сожалению еще отчеты строятся, и кэш(оперативку) засорять таблицами имхо не очень правильно.


J>Вот потому и выбрали такой путь.

J>Никаких тайных замыслов или каких то секретных потусторонних знаний не использовалось

J>Да и в случае чего рестарт одного АПП сервера будет заметен ну отслилы 50-100 пользователям и то если они в этот момент не медитировали

J>глядя в монитор а жали кнопки в приложении а если коннект был потерян то приложение его автоматом восстановит.

Ну понятно все с вами )) То бишь БД не только апп-сервер обслуживает.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[9]: Может я чего-то не понимаю?!!
От: Jericho113 Украина  
Дата: 13.09.06 14:15
Оценка:
Здравствуйте, denis_krg, Вы писали:

_>Ну понятно все с вами )) То бишь БД не только апп-сервер обслуживает.


К сожалению да
NetDigitally yours ....
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.