powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Работа с таблицей блокировок
24 сообщений из 24, страница 1 из 1
Работа с таблицей блокировок
    #38771198
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ранее всегда использовали "неразрывное" соединение с Каше и для работы с блокировками хватало возможностей команды LOCK...

Теперь перешли на работу по схеме "подключился, взял информацию или выполнид действия, отключился". Но теперь не понятно работает ли кто-то еще с такой же информацией или нет не понятно...

Возможен ли вариант работы с таблицей блокировок "без job"? Т.е. просто записать в нее некую информацию, для других клиентов, дабы можно было понять, что некто уже работает с некой информацией... И иметь возможность потом такую информацию удалять, когда "информация" освободилась...

Под "информацией" можно, для ясности, врять ту же программу... Или некий подузел какого-то глобала...
----------
Cache for Windows (x86-64) 2012.2.2 (Build 801) Fri Dec 7 2012 12:08:23 EST
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771248
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так же недавно услышал про "виртуальные" блокировки... Что это такое и как с этим работать?
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771408
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,

Сергей, относись к данным как к данным, а к блокировкам как к блокировкам. Добавь к данным еще одну составляющую "с этим работает такой-то пользователь".
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771425
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишешь свою установку и проверку блокировок, там устанавливается определнное значение в глобале, и проверяется свободно ли оно, при освобождении блокировки, снимаешь значение.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771434
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну яотносись к данным как к данным, а к блокировкам как к блокировкам. Добавь к данным еще одну составляющую "с этим работает такой-то пользователь".
А "сброс" кто будет делать при аварийных случаях?
В этом подходе велика вероятность, что информация о "занятости" этой "информации" не будет удаляться при тех же выключениях серверов или клиетов... При сбоях в сети...
Пока используем "промежуточный" вариант, запоминая хоролог последнего изменения... При сохранении изменения клиенту выдается сообщение, что "информация" уже поменялась с его последнего "прочтения" оной...
Но это не всех пользователей устраивает... Им больше импонирует "старый" вариант с блокировками. Тогда просто запрещалось изменение, кем-то занятой, "информации". А кто занял - можно посмотреть в портале.

Блокировки в этих случаях ведут себя лучше. Да и посмотреть их не составляет особого труда в том же Портале управления... Блокировку можно там же удалить, если она осталась из-за какого-то сбоя...
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771456
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaну яотносись к данным как к данным, а к блокировкам как к блокировкам. Добавь к данным еще одну составляющую "с этим работает такой-то пользователь".
А "сброс" кто будет делать при аварийных случаях?
Добавь операцию "игнорировать занятость и взять рычаги танка на себя, ибо тот пользователь не в состоянии адекватно отреагировать, ну что же поделать, планета продолжает крутиться".
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771466
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно даже еще кнопку добавить "ой, ромалэ, правду говорю, у меня и права есть".
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771474
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и какие проблемы добавить свой интерфейс, по отображению и управлению своими блокировками
можно сохранять PID процесса, который поставил блокировку, и при проверке, проверять еще и на то что этот процесс действительно живой. а если не живой, значит уже свободно место
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771508
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa ,

AutoLock (c 2014.1)
krvsaТеперь перешли на работу по схеме "подключился, взял информацию или выполнид действия, отключился". Но теперь не понятно работает ли кто-то еще с такой же информацией или нет не понятно...Не совсем понял почему.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771509
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorНу и какие проблемы добавить свой интерфейс, по отображению и управлению своими блокировками
можно сохранять PID процесса, который поставил блокировку, и при проверке, проверять еще и на то что этот процесс действительно живой. а если не живой, значит уже свободно место
Если там с обрывами то PID процесса оно как-бы ни о чем. Нужен ID пользователя. А проверить что пользователь живой может только другой пользователь.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771636
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну яМожно даже еще кнопку добавить "ой, ромалэ, правду говорю, у меня и права есть".
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771644
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit AutoLock (c 2014.1)
Не доросли еще до таких цыфр...
Но почитаю, как смогу.

servitkrvsaТеперь перешли на работу по схеме "подключился, взял информацию или выполнид действия, отключился". Но теперь не понятно работает ли кто-то еще с такой же информацией или нет не понятно...Не совсем понял почему.
По двум основным причинам...
1. Экономия количества лицензий. Лицензия нужна только на короткий момент подключения, далее работа идет только на клиенте...
2. Исходя из п.1 добавляем возможность работы не только в разных областях одного сервера, но и на любом другом сервере (так же во всех областях).
Хотя все сводится к одной по большому счету...
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771650
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну яНужен ID пользователя. А проверить что пользователь живой может только другой пользователь.
При "одновременной" работе нескольких пользователей, подключившийся пользователь запросто может никого не увидеть... Поскольку все они прочитали, что им нужно и работают с этим.
На сервере о них нет никакой информации... Пока...

Вот и думаем, как ее там оставить...

Т.е. пока что-то записать в таблицу блокировок "без job" нет вариантов? У нас Кащеи с 2010-тых по 2012-тые...
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771654
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И спасибо всем, кто откликается на темку.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771665
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit AutoLock (c 2014.1)
servit , а вот такой способ блокировки останется при отключении соединения с сервером? Это какой-то "аналог" команды lock ? Или это она и есть, только в "классовой обвязке"?
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771695
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaа вот такой способ блокировки останется при отключении соединения с сервером?Теперь мне ясен ответ на мой вопрос.
Т.е.krvsa<...> по схеме " подключился , взял информацию или выполнид действия, отключился "., но при этом продолжает работать в рамках некоей виртуальной сессии.
В таком случае таблица блокировок здесь не к месту.krvsaИли это она и есть, только в "классовой обвязке"?Именно так.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771748
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitТ.е.krvsa<...> по схеме " подключился , взял информацию или выполнид действия, отключился "., но при этом продолжает работать в рамках некоей виртуальной сессии.
Да, так.

servitВ таком случае таблица блокировок здесь не к месту.
Ясно...

servitkrvsaИли это она и есть, только в "классовой обвязке"?Именно так.
Ясно...
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38771766
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит остается только работать с глобалом вида s ^CacheTemp("задача","имя_области","информация")=""Он удалится при выключении сервера... Киляние узла даст остальным доступ...
Ну и принцип "ой, ромалэ, правду говорю, у меня и права есть" так же никто не отменял.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38772126
MaWr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsaЗначит остается только работать с глобалом вида s ^CacheTemp("задача","имя_области","информация")=""Он удалится при выключении сервера... Киляние узла даст остальным доступ...
Ну и принцип "ой, ромалэ, правду говорю, у меня и права есть" так же никто не отменял.

Если коннект не держится с сервером постоянно открытым, то перезагрузка сервера, в идеале, не должна оказывать на клиента влияния. И клиент не должен замечать эту перезагрузку.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38772293
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaWr , ты сам-то понял, что написал?
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38772568
MaWr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa MaWr , ты сам-то понял, что написал?
А что тут непонятного?
При перезагрузке сервера, клиентское приложение, не держащее постоянный коннект к базе, не будет замечать эту самую перезагрузку.

Оператор сидит забивает большую формочку. Коннекта к базе нет.
Пока он забивал ее сервер перезагрузили.
При отправке формы на сервер, он уже опять запущен -> клиентское приложение перезагрузку не заметило.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38772604
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaWrПока он забивал ее сервер перезагрузили.
При отправке формы на сервер, он уже опять запущен -> клиентское приложение перезагрузку не заметило.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38772975
Petr0vi4444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если данные слабо связаны и при сохранении не происходят изменения еще в 10 местах, то можно сделать такую систему:
При попытке сохранить данные на сервер проверять версию данных.
Если их уже кто-то изменил, предлагать:
1. Загрузить себе новую версию с потерей сделанных изменений
2.1 Если конфликты есть (оба пользователя изменили одно и тоже поле): открыть форму для решения конфликтов
2.2 Если конфликтов нет: слить данные вместе

Видел такое в RedMine.
...
Рейтинг: 0 / 0
Работа с таблицей блокировок
    #38773112
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petr0vi4444 , вопрос не в том "как делать без блокировок?"... Вопрос "можно ли как-то использовать таблицу блокировок вот при таком способе соединения"...
Ответ на него уже получен.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Работа с таблицей блокировок
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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