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

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

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

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

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

Счетчик

  • Автор темы wowa
  • Дата начала
W

wowa

Задача такова: нужно сделать счетчик просмотров на каждый документ., т.е. как на форуме: "данную тему просматривали N раз". Причем счетчик должен работать как в Вебе, так и в Лотусе

Как это лучше всего сделать?, чтобы не было разных конфликтов и ошибок...

Вариант, чтобы при открытии документа там в поле_счетчик срабатывал "+1", вроде не подходит! Будут насколько я понимаю конфликты...

Есть один вариант, это при открытии документа создавать документ (где будет занесено в определенное поле ID главного документа )
И так каждый раз на каждый документ....
Потом по расписанию работает агент, ... он считает сколько доков с ID_№1, и заносит(прибавляет) в поле этого документа, далее удаляет все левые документы, которые были созданы при открытии...
Т.е., пример:

Есть главный документ, в нем счетчик = 5
ID главного документа = N

За день этот документ открывали 10 раз. создано 10 левых документов, В каждом из этих документов есть полеID со значением "N"
Далее работает агент, находит, что количество документов со значением "N" равно 10, и прибавляет в главном документе в счетчик число 10, получается что док открывали уже 15 раз....

Надеюсь что идея ясна...
У кого какие есть замечания к этой идеи....
Может у кого-н есть другие мысли, может кто делал счетчик???????????
 
O

Omh

Почему не делать только 1 сторонний документ для каждого отслеживаемого, в котором и апдейтить счётчик?
Зачем нам новый док на каждое открытие?
 
W

wowa

Omh , вопрос конечно интересный, думаю профи подскажут ответ на этот вопрос...
Просто думаю создать новый документ будет быстрей, чем искать ранее созданный и добавлять к нему +1...И не факт что документ создан
Тем более я думал что агент будет удалять эти документы по расписанию

Также если 2 юзера откроют один и тот же документ, то может быть какой-н конфликт при изменении документа_счетчика
 
O

Omh

А потом база будет засерена делишен стабами по самое "не балуйся".

И меня терзают смутные сомнения, что при изменеии дока счётчика может появиться конфликт: там все действия достаточно быстры.
В крайнем случае можно систему локинга простенькую начирикать (использовать встроенную).

Лучше не лениться, апдейтить один и тот же документ.
Базе будет легче.
 
M

morpheus

И меня терзают смутные сомнения, что при изменеии дока счётчика может появиться конфликт: там все действия достаточно быстры.
будут возникать. было такое при атоматическом нумераторе ( у меня )


а может в виде просто использовать @DocChildren - кол-во ответов и будет количеством просмотров... хотя канечно база будет "засрана"
 
W

wowa

А потом база будет засерена делишен стабами по самое "не балуйся".
думал над этим...

Если популярность БД будет не велика, то думаю ничего страшного...

А если наоборот, то думал создать какую-н левую БД, где будут хранится только эти документы
 
O

Omh

Morpheus
Ок.

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

Цитата :
""...Domino воспринимает делишин стабы так же как и все остальные документы и при сёрче он их тоже проверяет на удовлетворение критериям отбора...""

Сам не проверял пока.
 
M

morpheus

Выносим тогда эти документики-факты открытия в соседнюю простенькую базу и генерим их там.
ну и как продолжение мысли ,просто каждый Х минут агентом собираем данные о доках -фактах и заносим их в главный документ... простенькая база пусть очищаеться каждый день )))).. точнее ночь... часика в 2 например
 
W

wowa

думал создать какую-н левую БД, где будут хранится только эти документы
Выносим тогда эти документики-факты открытия в соседнюю простенькую базу и генерим их там.

Ну вот как я и думал...

Может есть еще какой-н другой вариант счетчика?
 
O

Omh

А остальное - разновидности в зависимости от того куда и как кропалить:
1. тек. док
2. сторонний док
3. профайл :)

Кмк, ничего принципиально нового не придумаеться...
 
W

wowa

""...Domino воспринимает делишин стабы так же как и все остальные документы и при сёрче он их тоже проверяет на удовлетворение критериям отбора...""

Хмм..... У меня в БД есть поисковик,.... т.е. если я не вынесу в отдельную БД, то мой поисковик начнет МЕДЛЕННЕЙ работать? Я правильно понял!
 
O

Omh

wowa
Ну это ещё надо проверить.
Т.к. источник не трастед :)

Но если это правда, то да.
 
O

oxystile

для каждого документа (А) сделать документ счетчик(В) пусть там будет поле ID документа(А), для кот. он счетчик.
в основном документе будет поле -кол-во просмотров, кот берет значения из этого дока-счетчика,и поле, будет вычисляться через формулу при открытии, но не не сохраняется, да и зачем.
а за тем, чтобы не было конфликтых документов-счетчиков следим в программе, т.е. перед увеличением счетчика берем документ счетчик по ID документа(А), здесь также можем проверить их количество, за основу брать тот док, где значение счетчика выше, остальные убить
 
Мы в соцсетях:

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