Re: эскалация блокировок и менеджер блокировок
От: Merle Австрия http://rsdn.ru
Дата: 14.03.05 18:14
Оценка:
Здравствуйте, StalkerS, Вы писали:

SS>Прочитав статью на данном сайте по поводу эскалации блокировок, возник такой вопрос. В статье приведены графики зависимости производительности от грануляции обьектов для коротких и длинных транзакций. Там видно, что для длинных транзакций лучше использовать грубую грануляцию и наоборот. Сделан вывод, что эскалация — вещь полезная. Однако, так как менеджер блокировок не принимает во внимание длины транзакций, а манипулирует только обьемом доступной памяти и количеством блокировок, вполне возможна ситуация, когда при длинных транзакциях никаких эскалаций не будет, а при коротких — будут.

Нет, не так:

Таким образом, воздействие этих трех факторов приводит к тому, что в некоторых случаях, когда число блокировок велико и в системе выполняются довольно длинные транзакции, с точки зрения производительности, становится выгоднее блокировать объекты с большей гранулярностью.

Основная проблема, с которой борется эскалация — это именно число блокировок в системе, а "длинна" транзакции, в данном случае, лишь косвенный признак, который указывает на число этих самых блокировок. В статье под "длинной транзакции" подразумевалось именно это.
Более того, транзакция которая накладывает мало блокировок попросту не может быть "длинной", иначе в системе явно что-то не так.
Таким образом, количество блокировок это именно тот самый параметр, на который надо смотреть при принятии решения об эскалации.

SS>Собственно вопрос : какой практический толк от такого менеджера ?

Большой.

SS>Получается, единственный плюс от эскалаций — экономия памяти ?

Нет. Он спасает от всех проблем перечисленных в статье, основные — Data contention и объем памяти, все они критичны именно к количеству блокировок, а не к "длинне" как таковой.

P. S.
Комментарии и вопросы по статье лучше задавать непосредственно в топике предназначенном для обсуждения этой самой статьи. Из текста статьи есть ссылка на этот топик.
... [ RSDN@Home 1.1.4 rev 303 ]
Мы уже победили, просто это еще не так заметно...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.