• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Параллельная работа с документом

  • Автор темы sanch
  • Дата начала
S

Sandr

Как я понял, служебные доки - это таски. :)
Поэтому и сказал, что смысл одинаков. Вот если бы от шедульного агента избавиться... Но это фантастика. :)

Почему фантастика? Можно не шедульный.. по сохранению служебного дока запустить агент на сервере...
 
S

Sandr

Если сервер один, то да. А если много?

? Не понял.. а в чем разница?

шопопало... каждый будет пускать агент... где паралельность?

Смысл паралельности - не в том, что бы данные попали в документ одновременно, а в том, что бы пользователи могли работать одновременно.. Так что тут никакой угрозы для паралельности нет.

Другое дело, что немного большая нагрузка на сервер...
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Не понял.. а в чем разница?
Допустим у нас несколько серверов. На каждом будет по реплике документа. Тогда, при одновременной правке документа (т.е. одновременном запуске агента на серверах) мы получим конфликт.
 
S

Sandr

Допустим у нас несколько серверов. На каждом будет по реплике документа. Тогда, при одновременной правке документа (т.е. одновременном запуске агента на серверах) мы получим конфликт.

Агент должен отрабатывать только на том сервере, где сохранили таск. Тобишь если документ сохранили на сервере1, то его обрабатывает агент сервера1 - это, между прочим, и для шедульного агента очень важное правило...
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Агент должен отрабатывать только на том сервере, где сохранили таск. Тобишь если документ сохранили на сервере1, то его обрабатывает агент сервера1 - это, между прочим, и для шедульного агента очень важное правило...
Т.е. если два таска одновременно сохранены на двух разных серверах, то мы получим конфликт при репликации.
 
K

K-Fire

Не, вариант не sux.
А как раз то что нужно :rolleyes:

Что бы раскешировать док, то, как сказал Medevic, надо перевзять документ через view.
Можно базу перевзять через ReplicaID и там взять документ по униду, но это долго.
Я вторым способом профайлы раскешировал, т.к. через view без извратов профайл не взять.

Через getDatabase не вырастет каменный цвятог.
Через OpenByReplicaID вырастет.

Код:
Call doc.Save(True, True)
NID = doc.NoteID

Set agent = db.GetAgent("SomeAgent")
Call agent.Run(NID)

Set doc = Nothing
Set doc = db.GetDocumentByID(NID)

У меня вот такая конструкция вполне неплохо работает.
 
D

D!m@n

В качестве "полумеры" можно использовать свойство формы Merge conflicts.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!