Общая таблица у разных проектов

Enigma

Client
Регистрация
16.06.2017
Сообщения
187
Благодарностей
31
Баллы
28
В двух совершенно разных проектах используется одна и та же таблица, которая синхронизирована с одним и тем же файлом.
Не будут ли эти проекты создавать друг другу помехи на многопотоках?

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

Я этот момент предварительно тестировал, вроде все окей, но хочется услышать мнение от людей с опытом использования данной схемы.
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113
Я не раз читал, что при многопоточности таблица, полностью синхронизрованная с файлом, обрабатывается весьма корректно.
В данной схеме опыта нет.
Я много раз слышал, что таблицы в принципе не очень корректно работают с зенкой. А тут еще на два шаблона. Может лучше список привязать как таблицу?
 
  • Спасибо
Реакции: Animal и Enigma

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
Не будут ли эти проекты создавать друг другу помехи на многопотоках?
Если обращения (чтение и запись) не оч. частые, то вполне вероятно, проблем не заметите, но теоретически и практически могут возникать коллизии между двумя проектами работающими с одной таблицей или списком, привязанными к одному и тому же файлу. Возможны потери части данных.
 
  • Спасибо
Реакции: Enigma

Enigma

Client
Регистрация
16.06.2017
Сообщения
187
Благодарностей
31
Баллы
28
Обращения достаточно частые, особенно с чтением.
Дело в том, что я выбрал этот способ именно для взаимодействия между двумя проектами. Они как бы обмениваются инфой в ячейках, отсылая команды друг другу и записывая статус выполнения этих команд.

Пока радует скорость обработки, ошибок не замечал, может потому что таблица небольшая, всего 5 строк. Но после Ваших слов понимаю теперь, что на практике все может быть.

Вероятно, для подобной цели есть более подходящие инструменты типа базы данных?
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113
Если обращения (чтение и запись) не оч. частые, то вполне вероятно, проблем не заметите, но теоретически и практически могут возникать коллизии между двумя проектами работающими с одной таблицей или списком, привязанными к одному и тому же файлу. Возможны потери части данных.
А если залочить запись чтение, то все равно могут быть "коллизии"? =)
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
А если залочить запись чтение, то все равно могут быть "коллизии"? =)
Не буду утверждать, но по моему работать с залочкой можно при работе с одним проектом многопоточно, когда залочка действует между соседними потоками одного проекта. А тут два разных проекта, как бы полностью изолированные друг от друга, с двумя раздельными копиями таблицы или списка в памяти.
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113
Не буду утверждать, но по моему работать с залочкой можно при работе с одним проектом многопоточно, когда залочка действует между соседними потоками одного проекта. А тут два разных проекта, как бы полностью изолированные друг от друга, с двумя раздельными копиями таблицы или списка в памяти.
А если обращаться к спискам напрямую через сниппет?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
А если обращаться к спискам напрямую через сниппет?
Опять не буду утверждать, но мне кажется, что обращение будет к конкретной копии таблицы/списка в памяти.
То есть разницы при работе через стандартный экшен или сниппет - не будет.
 
  • Спасибо
Реакции: Mikhail B.

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
общие локеры распространены на все проекты зеннопостера, общие для всех. По хорошему, проблем быть не должно
 
  • Спасибо
Реакции: Enigma и Sergodjan

Enigma

Client
Регистрация
16.06.2017
Сообщения
187
Благодарностей
31
Баллы
28
А что это за "общие локеры"? Как ими пользоваться? Они по умолчанию уже есть в стандартных экшенах или нужно только через сниппет?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
А что это за "общие локеры"? Как ими пользоваться? Они по умолчанию уже есть в стандартных экшенах или нужно только через сниппет?
есть.
Так или иначе, всегда можно провести какой-то стресс-тест и убедится или опровергнуть. Подготовка теста вряд ли займёт много времени
 
  • Спасибо
Реакции: Enigma

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 518
Благодарностей
3 370
Баллы
113

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 226
Баллы
113

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)