powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / оптимистическая и пессимистическая конкуренция
25 сообщений из 33, страница 1 из 2
оптимистическая и пессимистическая конкуренция
    #32779744
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хотелось бы узнать, как можно реализовать оптимистическую и пессимистическую конкуренцию для учетных систем
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32779826
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, value!
Ты пишешь:

value v> хотелось бы узнать, как можно реализовать оптимистическую
v> и пессимистическую конкуренцию для учетных систем
Сервер какой?

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32779841
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сервер MSSQL2000, архитектура - обычный клиент-сервер. А тип сервера влияет на способ реализации? Разве нет каких-нибудь общих принципов?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32779909
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть мой вопрос глупый, но должна же как то обрабатываться ситуация, когда во время редактирования документа одним пользователем, другой пользователь этот же документ пытается удалить?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32779939
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА тип сервера влияет на способ реализации?
Конечно. Механизмы разные.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32779988
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ок. как реализовать для приведенной выше конфигурации? Я планировал добавить в таблицы документов поле lock, и при открытии документа для редактирования выставлять его true, после закрытия false. Но есть проблема - если во время редактирования будет потеряно соединение, или приложение завершиться аварийно то документ так и останется заблокированным.
Если знаете механизмы для различных типов серверов, то опишите pls.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780036
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пессимистическая блокировка для Firebird 1.5.x
Код: plaintext
1.
2.
3.
4.
SELECT ... FROM <sometable>
[WHERE ...]
[FOR UPDATE [OF ...]]
[WITH LOCK]
...;

для mssql не знаю...
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780057
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо. А не могли бы Вы немного пояснить:
[FOR UPDATE [OF ...]]
[WITH LOCK]
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780088
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SELECT * FROM ORDERS WHERE ID_ORDER = :PID_ORDER FOR UPDATE WITH LOCK
- при обращении другой транзакции будет lock conflict
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780118
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
то есть данная запись блокируется на время выполнения данной транзакции? Я правильно понял?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780139
chad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если в поле lock писать не false true а идентификатор коннекта, а при дисконнекте (аврийном, штатном ) очищать это поле?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780156
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для MS SQL есть sp_getapplock/sp_releaseapplock.
а поиск по форму "SQL Server" даст еще систему блокирования документов.


Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780157
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
valueто есть данная запись блокируется на время выполнения данной транзакции? Я правильно понял?Да
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780177
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ОК. Такой вариант был бы оптимальным. А mssql позволяет обрабатывать события открытия соединения, закрытия соединения?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780252
chad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Про mssql не знаю.В SYBASE ASA есть такие события. Можети в mssql есть.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780291
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to chad: понял, спасибо.

Насколько я понимаю, реализация механизма конкуренций при архитектуре клиент-сервер, без привязки к специфичеиким возможностям конкретного сервера невозможна?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780298
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
valueНасколько я понимаю, реализация механизма конкуренций при архитектуре клиент-сервер, без привязки к специфичеиким возможностям конкретного сервера невозможна?
Пожалуй это не относится к оптимистической блокировке, только к писсимистической.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780301
chad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну на случай аварийного отключения можно сделать кнопку принудительного сброса блокировок.Или в клиенте при входе проверять не осталось ли блокировок от пользователя и их удалять.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780340
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chadНу на случай аварийного отключения можно сделать кнопку принудительного сброса блокировок.Или в клиенте при входе проверять не осталось ли блокировок от пользователя и их удалять.

Это вариант, но если например у одного из пользователей во время редактирования документа выходит из строя рабочая станция, то он должен бежать к соседней и запускать клиент под своим аккаунтом, заказчик смысл таких действий не поймет, да и ближайший компьютер может находится далеко. А разблокировать все документы сразу, по моему не очень корректно будет.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780354
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dik76Пожалуй это не относится к оптимистической блокировке, только к писсимистической.
А можно поподробнее про оптимистическу блокировку?
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780366
chad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мои предложения это всего лишь наметки пути.После сборки обработать напильником, надфилем, шлиф бумагой.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780395
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
value Dik76Пожалуй это не относится к оптимистической блокировке, только к писсимистической.
А можно поподробнее про оптимистическу блокировку?
Тынц тебе. А вообще поиск рулит
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780419
value
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
понял, возможно два варианта: либо использовать средства сервера, либо приведенный в статье способ, но с недостатком: "... минус тут один: запись может висеть в заблокированном состоянии сколько угодно, поэтому желательно наличие какого-нибудь администратора, который может принудительно разблокировать любую запись."
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780575
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
value
Может быть мой вопрос глупый, но должна же как то обрабатываться ситуация, когда во время редактирования документа одним пользователем, другой пользователь этот же документ пытается удалить?


Хочу дать совет : не будь слишком умным и ... просто не думай об этом до тек пор , пока это действительно не понадобиться. Мне за лет 7 работы с СУБД ни разу не понадобилось. Конфликты подобного рода _реально_ очень редки.
...
Рейтинг: 0 / 0
оптимистическая и пессимистическая конкуренция
    #32780580
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
value
хотелось бы узнать, как можно реализовать оптимистическую и пессимистическую конкуренцию для учетных систем


Пессимистическая тебе не грозит, если у тебя MSSQL - база раком встанет от длинных транзакций. Остается либо оптимистическая вообще ( т.е. вообще не пытаться обнаружить конфликты), либо оптимистическая с обнаружением конфликтов по
полю TIMESTAMP

всем (изменяемым или вообще всем) полям записи.

Конкретно как это реализуется надо писать, или знаешь ?
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / оптимистическая и пессимистическая конкуренция
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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