powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / архивариус: обсуждение особенностей POST_EVENT на классике(CS)
71 сообщений из 71, показаны все 3 страниц
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40052965
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здравствуйте, ВСЕ!

помню, что когда-то обсуждали нюансы именно для CS, а вот найти тему не могу.
мож кто помнит?
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053063
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

Ты пользуешь эвенты? Тот самый, кооторый кричал, что эвенты - гуано?-)))))
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053064
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

Насколько помню - там были особенности с зависанием отправки....
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053128
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

Про что именно-то? И для какой версии?
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053140
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMaster
Мимопроходящий,

Ты пользуешь эвенты? Тот самый, кооторый кричал, что эвенты - гуано?-)))))


Иээххх... Вот оставь детей без присмотра... Сначала на тройку перешли, теперь вот каку трогают. Искренне надеюсь, что хоть это чиста из любви к искусству и тяги к познанию мира.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053441
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А че там за потенциальные грабли?
Мы пользуем события, и с классиком тоже.
Да, AUX порт открывать приходится для файрвола.
Вроде на практике косяков не замечал.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053467
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 09:44, o_v_a пишет:
> А че там за потенциальные грабли?
> Мы пользуем события, и с классиком тоже.
> Да, AUX порт открывать приходится для файрвола.

если склероз меня не плющит, то в классике AUX гвоздиком никак не прибивается.
или это у меня "ложные воспоминания"?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053476
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
15.03.2021 09:44, o_v_a пишет:
> А че там за потенциальные грабли?
> Мы пользуем события, и с классиком тоже.
> Да, AUX порт открывать приходится для файрвола.

если склероз меня не плющит, то в классике AUX гвоздиком никак не прибивается.
или это у меня "ложные воспоминания"?

Насчёт ложных утверждать не буду, но RemoteAUXPort в firebird.conf отключен по умолчанию.
Приходится при новых установках не забывать включать и указывать конкретное значение.
Ну и правило для файрвола прописать не забыть, чтоб в не только tcp/3050 ходил, но этот порт.
Где эти грабли расставлены - это для себя давно уже отметили.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053477
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 11:17, o_v_a пишет:
> Насчёт ложных утверждать не буду, но RemoteAUXPort в firebird.conf отключен по умолчанию.
> Приходится при новых установках не забывать включать и указывать конкретное значение.

склероз мне шепчет, что RemoteAUXPort в firebird.conf классиком игнорируется
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053481
Barmaley57
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий

если склероз меня не плющит, то в классике AUX гвоздиком никак не прибивается.
или это у меня "ложные воспоминания"?
Дык, а как он может прибиться, если процессов несколько?
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053485
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 11:23, Barmaley57 пишет:
> Дык, а как он может прибиться, если процессов несколько?

вот и я туда же.
в самом firebird.conf только упоминание, что оно Per-connection
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053514
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053520
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 12:14, hvlad пишет:
> https://firebirdsql.org/rlsnotesh/rnfb25-fbconf-rmtauxport.html
> http://tracker.firebirdsql.org/browse/CORE-2263

ага.
знач склероз мне таки не изменяет.
т.е. начиная с 2.5.Х уже таки можно на классике выставлять RemoteAuxPort?

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053523
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
т.е. начиная с 2.5.Х уже таки можно на классике выставлять RemoteAuxPort?
Уж больше 10-лет как :)
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053531
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 12:31, hvlad пишет:
> Уж больше 10-лет как :)

долгая память - большие хлопоты ©

я правильно понимаю, что все мрачные истории остались в проклятом прошлом
и на 3-ке (CS) касаемо POST_EVENT уже всё таки безоблачно?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053534
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
13.03.2021 13:57, Старый плюшевый мишка пишет:
> Иээххх... Вот оставь детей без присмотра... Сначала на тройку перешли, теперь вот каку трогают.
> Искренне надеюсь, что хоть это чиста из любви к искусству и тяги к познанию мира.
>

пока присматриваемся ;-)
соизмеряя бильярдный шар с соответствующим отверстием.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053545
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

если уметь их готовить, то проблем быть не должно.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053548
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 13:05, hvlad пишет:
> если уметь их готовить, то проблем быть не должно.

мне нужно знать, где стелить соломку
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053559
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящиймне нужно знать, где стелить соломку

Клиент ожидает событий в отдельном потоке и, соответственно, callback вызывается в его
контексте. Доставка извещения из него главному потоку - самый большой challenge для всех
компонентописателей.

PS: Как побочный эффект из самого callback вызывать большую часть Firebird API нельзя. isc_event_counts() - можно. isc_que_events() - не уверен. Лично я не рискнул.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053574
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 13:27, Dimitry Sibiryakov пишет:
> Клиент ожидает событий в отдельном потоке и, соответственно, callback вызывается в его
> контексте. Доставка извещения из него главному потоку - самый большой challenge для всех
> компонентописателей.
>
> PS: Как побочный эффект из самого callback вызывать большую часть Firebird API нельзя. isc_event_counts() - можно. isc_que_events() - не уверен. Лично я не рискнул.

эти нюансы я учитываю.
в потоке, в котором крутится callback, никаких телодвижений, кроме отправки уведомления в главный поток.
но это уже прикладные вопросы, меня же интересовали архитектурные и сетевые.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053589
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийно это уже прикладные вопросы, меня же интересовали архитектурные и сетевые.

Так о них я тебе и говорю. Если ты создаёшь свой собственный поток для ожидания событий
(как это сделал Джефф Оверкэш или кто там автор IBXEvents) - ты облажался.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053608
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 14:00, Dimitry Sibiryakov пишет:
> Так о них я тебе и говорю. Если ты создаёшь свой собственный поток для ожидания событий - ты облажался.

поясни.

> (как это сделал Джефф Оверкэш или кто там автор IBXEvents)

изначально это был сторонний IBAlert, который в комплект IBX не входил.
ставился он отдельно в каком-то Delphi Plus Pack'е.
автора я не помню.
потом в эпоху D5 Джеф наваял свой TIBEvents, отличный (от других) ©
но потом Джефу сообщили, что он облажался и Borland подгрёб под себя
SuperIB Events от Дэвида С.Бекера.
оно вошло в D7.
но потом Джеф снова проявил незаурядную творческую настойчивость
и переделал всё "как надо", и не так как у других.
но как оказалось, снова облажался.

вот поэтому сижу на попе ровно и размышляю о построении велосипеда.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053619
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийпоясни.

См.выше. Клиентская библиотека "унутре" УЖЕ создаёт свой собственный поток для приёма
событий и вызывает твою AST в его контексте. Всё, что тебе надо сделать это получить
разницу счётчиков с помощью isc_event_counts() и послать "наверх" сообщения.

Чтобы воду в ступе не толочь, вот годами проверенная процедура из репликатора:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
static void ast_routine(void* result, ISC_USHORT length, const ISC_UCHAR * updated)
{
         WriteDLog("ast_routine");

         event_id = 0; // indicate that events trap need recharge

         // Prevent AV when this routine called on isc_cancel_event()
         if (updated != NULL && length>0)
         {
             ISC_ULONG event_counters[20];
             isc_event_counts(event_counters, length, EventBuffer, updated);

             if (event_counters[2] > 0)   /*Exit Now*/
             {
                 WriteDLog("Event: Exit Now");
                 Done = 1; // Finish current replication instantly
                 SendEvent(EVENT_SHUTDOWN);
             }
             else
             if (event_counters[1] > 0)   /*Replicate Now*/
             {
                 WriteDLog("Event: Replicate Now");
                 SendEvent(EVENT_REPLICATE);
             }
             else
             if (event_counters[0] > 0)   /*Reload Config*/
             {
                 WriteDLog("Event: Reload Config");
                 SendEvent(EVENT_RELOAD);
             }
         }
}


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053641
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.03.2021 14:35, Dimitry Sibiryakov пишет:
> См.выше. Клиентская библиотека "унутре" УЖЕ создаёт свой собственный поток для приёма
> событий и вызывает твою AST в его контексте. Всё, что тебе надо сделать это получить
> разницу счётчиков с помощью isc_event_counts() и послать "наверх" сообщения.
>
> Чтобы воду в ступе не толочь, вот годами проверенная процедура из репликатора:

гут!
такие нюансы всё меняют.

СПАСИБО!!!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053787
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийтакие нюансы всё меняют.

Пока не забыл: есть ещё нюанс, который на самом деле здоровенные грабли мимо которых
никто, наверное, не прошёл. Для каждого подключения нужно использовать свой собственный
чистенький event block с нулевыми счётчиками внутри. Иначе поведение первого
isc_que_events() будет непредсказуемо, а он обязан сразу вызвать callback с
текущими значениями счётчиков.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053892
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в евенты бы еще полезной нагрузки положить - цены бы им не было...
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053900
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений,

для этого их надо переделать чуть менее, чем полностью
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053905
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr,

догадываюсь
это были мечты в слух

зы
а так получается какой0то чемодан без ручки, вокруг которого приходиться городить свои велосипеды
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053908
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений,

напиши себе UDR которая фигачит сообщения в какой-нибудь RabbitMQ или другой брокер и будет тебе счастье
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053918
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений,

а компоненты под "полезную нагрузку" кто будет [до|пере]писывать? Ладно у Мимопроходящего велосипед свой :-), а остальные как же?
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053934
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений
в евенты бы еще полезной нагрузки положить - цены бы им не было...
Это неправильное желание, оно от непонимания инструмента.
Правильно - положить всё, что нужно, в таблицу(ы) и потом дёргать событие.
При получении события - взять данные из таблиц(ы), или отложить на потом.

Самый частый запрос - хочу получить ID для того документа, который менялся.
Ок. Предположим - получили. Но что с этим ID потом делать ? Распечатать его на лбу ? :)
Всё равно потом нужно идти в БД за содержимым док-та.
Или вы хотите ВЕСЬ документ в событие всунуть ? :)
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40053937
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad
Или вы хотите ВЕСЬ документ в событие всунуть ? :)
[сарказм]Йа, Йа, прямо в жейсоне, ну или хмл-ке. [/сарказм]
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054057
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
напиши себе UDR которая фигачит сообщения в какой-нибудь RabbitMQ или другой брокер и будет тебе счастье

как взат вертать сообщение при ролбеке?
на 2.5 вроде нет udr

dimitr
а компоненты под "полезную нагрузку" кто будет [до|пере]писывать? Ладно у Мимопроходящего велосипед свой :-), а остальные как же?

в нашем случае тож свой велосипед на go
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054059
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгенийна 2.5 вроде нет udr

Зато есть триггер ON COMMIT.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054060
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad
Самый частый запрос - хочу получить ID для того документа, который менялся.
Ок. Предположим - получили. Но что с этим ID потом делать ? Распечатать его на лбу ? :)
Всё равно потом нужно идти в БД за содержимым док-та.
Или вы хотите ВЕСЬ документ в событие всунуть ? :)


в некоторых кейсах достаточно id, чтобы понять нужно ли реагировать на событие или нет
ну сходить за документом по id не одно и то же что рефреш выборки или запрос последних документов по времени изменения

Ivan_Pisarevsky
[сарказм]Йа, Йа, прямо в жейсоне, ну или хмл-ке. [/сарказм]

в каждой шутке только доля шутки ))
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054121
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений
hvlad
Самый частый запрос - хочу получить ID для того документа, который менялся.
Ок. Предположим - получили. Но что с этим ID потом делать ? Распечатать его на лбу ? :)
Всё равно потом нужно идти в БД за содержимым док-та.
Или вы хотите ВЕСЬ документ в событие всунуть ? :)


в некоторых кейсах достаточно id, чтобы понять нужно ли реагировать на событие или нет
Используй событие с этим ID в имени. В "некоторых кейсах", есс-но, а не всегда ;)

Дегтярев Евгений
ну сходить за документом по id не одно и то же что рефреш выборки или запрос последних документов по времени изменения
Если [список нужных] ID лежит в спец таблице (как я и писал выше), то нет никакой разницы.
Про список последних по времени изменения - то же самое. Или клиент не знает времени ? Или время изменения не хранится с документом ?

Ещё ни разу я не слышал убедительных аргументов в пользу необходимости "полезной нагрузки" в event'ах.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054123
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
16.03.2021 16:25, hvlad пишет:
> Используй событие с этим ID в имени.

и как на него подписаться?
ID заранее неизвестен.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054124
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
16.03.2021 16:25, hvlad пишет:
> Используй событие с этим ID в имени.

и как на него подписаться?
ID заранее неизвестен.
"в некоторых кейсах достаточно id, чтобы понять нужно ли реагировать на событие или нет"

Либо ты знаешь заранее эти ID и их смысл, либо одно из двух. Не ?
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054127
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad
Используй событие с этим ID в имени.

hvlad
Ещё ни разу я не слышал убедительных аргументов в пользу необходимости "полезной нагрузки" в event'ах.


Беда в том, что этот ID заранее не известен клиенту, который должен подписаться на это событие для начала.

Для маленького справочника, конечно, можно попробовать зарегистрировать 1000 событий на каждый ID :)
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054128
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock,

см ответ выше
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054129
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
16.03.2021 16:25, hvlad пишет:
> Используй событие с этим ID в имени.

и как на него подписаться?
ID заранее неизвестен.
Что-то я сегодня не успеваю нигде :(
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054132
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad
"в некоторых кейсах достаточно id, чтобы понять нужно ли реагировать на событие или нет"

Либо ты знаешь заранее эти ID и их смысл, либо одно из двух. Не ?
Понятно, что можно перед отправкой эвента наполнять какую-то доп. таблицу этими ID, а на клиенте оттуда уже их читать.
Но это же лишние телодвижения.
Кроме того, таблица одна, а клиентов, получивших событие - 183. Кому из них очищать эту таблицу после обработки? Это еще вопрос.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054137
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вродь был таки довольно древний тикет в FD, касаемо подписки на события по маске.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054141
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
а вродь был таки довольно древний тикет в FD, касаемо подписки на события по маске.
В 2.0 собирались ввести вроде что-то подобное, но передумали.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054168
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock
Понятно, что можно перед отправкой эвента наполнять какую-то доп. таблицу этими ID, а на клиенте оттуда уже их читать.
Но это же лишние телодвижения.
Это не лишние телодвижения. Это то, как правильно пользоваться инструментом.
И, надеюсь, ты не предлагаешь отдельно читать эти ID и потом читать соотв. документы ?

YuRock
Кроме того, таблица одна, а клиентов, получивших событие - 183. Кому из них очищать эту таблицу после обработки? Это еще вопрос.
Это детсад, а не вопрос. Есть десятки способов это сделать.

С чего ты решил, что подобные проблемы не появятся при реализации "полезной нагрузки" в event manager ?
Но платить за них будут все - и те кому оно надо, но лень сделать самому "лишние телодвижения", и те, кому оно не надо.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054169
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
а вродь был таки довольно древний тикет в FD, касаемо подписки на события по маске.
Та же самая ерунда.
У вас СУБД в руках, научитесь уже выделять сущности и управлять ими ;)
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054183
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockБеда в том, что этот ID заранее не известен клиенту, который должен подписаться на это
событие для начала.

Ну подписался ты на это событие, ну пришло оно тебе с каким-то ID, как ты решишь надо ли
на него реагировать или нет, если тебе неизвестен ID на который надо реагировать.

Ок, вангую: ты сначала подписываешься, потом узнаёшь ID. А что, подписаться только после
того, как узнал ID, это настолько гениальная идея, что придёт в голову не каждому?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054193
Barmaley57
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как мне видится: идея с передачей ID не очень хорошая, по причине того, что при массовой посылке event'ы группируются по event_name,count(). Представьте нагрузку на канал в случае передачи каждого ID...
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054194
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
YuRockБеда в том, что этот ID заранее не известен клиенту, который должен подписаться на это
событие для начала.

Ну подписался ты на это событие, ну пришло оно тебе с каким-то ID, как ты решишь надо ли
на него реагировать или нет, если тебе неизвестен ID на который надо реагировать.Неизвестен потому, что реагировать надо на любое ID эвэнта c определенным именем.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054197
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Barmaley57
Как мне видится: идея с передачей ID не очень хорошая, по причине того, что при массовой посылке event'ы группируются по event_name,count(). Представьте нагрузку на канал в случае передачи каждого ID...
Это всё понятно. Я вообще ничего не предлагаю. Пишу в стиле было бы хорошо, если бы...
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054206
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockреагировать надо на любое ID эвэнта c определенным именем.

То есть в конечном итоге тебе таки надо реагировать на ивент с определённым именем.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054220
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

YuRockреагировать надо на любое ID эвэнта c определенным именем.

То есть в конечном итоге тебе таки надо реагировать на ивент с определённым именем.


или не реагировать.
вот сижу я, смотрю документ 1001.

прилетело - поменялся документ 1002.
никуда ни за чем идти не надо.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054244
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pastorвот сижу я, смотрю документ 1001.

....подписался на событие ХХХ1001.
pastorприлетело - поменялся документ 1002.

....ан нет, не прилетело, ибо не подписался на событие ХХХ1002.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054250
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
YuRockреагировать надо на любое ID эвэнта c определенным именем.

То есть в конечном итоге тебе таки надо реагировать на ивент с определённым именем.Ну конечно. Только без ID я получаю событие, грубо говоря, "изменилась таблица", а с ID - изменилась конкретная запись этой таблицы.
Я вижу разницу.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054251
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Событие из двух частей:
поле1 само событие
поле2 список доп атрибутов события

Распарсив второе поле события можно решить надо ли лезть в базу.

просители просят это?
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054255
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_Pisarevsky
Событие из двух частей:
поле1 само событие
поле2 список доп атрибутов события

Распарсив второе поле события можно решить надо ли лезть в базу.

просители просят это?
Не только надо ли лезть в базу, но и как в нее лезть, если надо.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054263
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_Pisarevskyпросители просят это?

Они просят это: https://www.postgresql.org/docs/current/sql-notify.html
Или даже это: https://docs.oracle.com/database/121/ADQUE/aq_intro.htm
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054266
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad
Используй событие с этим ID в имени. В "некоторых кейсах", есс-но, а не всегда ;)

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

hvlad
Если [список нужных] ID лежит в спец таблице (как я и писал выше), то нет никакой разницы.
Про список последних по времени изменения - то же самое. Или клиент не знает времени ? Или время изменения не хранится с документом?
Ещё ни разу я не слышал убедительных аргументов в пользу необходимости "полезной нагрузки" в event'ах.

все это требует доп затрат на поля/индексы (они есть не всегда есть в схеме), и многократные перечитывания одних и тех же данных

зы
перечитал посты ниже, напомнило обсуждение array dml или как оно называется
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054280
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений
hvladИспользуй событие с этим ID в имени. В "некоторых кейсах", есс-но, а не всегда ;)

мой некоторый кейс - в памяти лежит 50к записей, чтобы понять каку запись выкидывать из кеша каку нет, я подпишусь на 50т событий, выглядит как бредКонечно 50К событий - это бред.
А значит это не есть тот "некоторый кейс", когда имеет смысл подписываться на событие с конкретным ID.

Дегтярев Евгений
все это требует доп затрат на поля/индексы (они есть не всегда есть в схеме), и многократные перечитывания одних и тех же данных
Да, систему нужно проектировать с учётом всех её частей. Бесплатного ничего нет, это новость ? :)

Дегтярев Евгений
и многократные перечитывания одних и тех же данных
С чего бы это ?

Если есть желание, можем обсудить реализацию системы с подобным кешем и поищем оптимальное решение. Может и event'ы не понадобятся :)

PS где-то встречал мнение, что инвалидация кеша считается одной из самых сложных задач
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054306
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad

У вас СУБД в руках, научитесь уже выделять сущности и управлять ими ;)


В золотую рамочку и на стенку заместо портрета Путина.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054309
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На мой пошлый взгляд ретрограда-консерватора 99.(9) хотелок попользоваться эвентами проистекает из стремления создать систему типа - Вася, проснись/выйди из и игры/отпусти коленку секретарши/.../, нажми уже кнопочку и получи зарплату.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054322
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock,

ну чего вы мусолите. Еманов проверил уже несколько лет назад, на предмет передачи параметров в событиях и получения событий по маске. И сказал - ну его нахер. А вы всё точите...
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054323
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишкаВ золотую рамочку и на стенку заместо портрета Путина.
у меня в офисе до потопа вместо Путина висел распечатанный адский запрос к DB2 на 2 страницы А4.
К сожалению, из-за потопа текст запроса сгинул. Но за такой запрос не просто канделябром, а лопатой надо было.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054340
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не, начиная с 2.5 ивентами интересные вещи стало можно делать.
Но необычные, да, в большинстве случаев можно обойтись и без.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054344
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Ivan_Pisarevskyпросители просят это?

Они просят это: https://www.postgresql.org/docs/current/sql-notify.html
Или даже это: https://docs.oracle.com/database/121/ADQUE/aq_intro.htm Я понял, наши просители хотят как у постгрессовцев! КМК... :)
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054671
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_Pisarevsky,

у оракл внутре похоже реализовал полноценный сервер очередей, перебор
а вот решение как у пг было бы огонь (по крайней мере с точки зрения удобства пользования)
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054675
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгенийа вот решение как у пг было бы огонь

Мгновенно найдётся чудак, повесивший посылку первичного ключа изменившейся записи в
триггер, и ещё один, проапдейтивший целую таблицу на которой этот триггер висит отчего
сервер "делает в-ж-ж-ж и хренакс".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054693
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad
Дегтярев Евгений
и многократные перечитывания одних и тех же данных
С чего бы это ?

с одним читателем мне понятно как избежать повторных чтений, со многими нет.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054695
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
отчего сервер "делает в-ж-ж-ж и хренакс".

как будто сейчас таких возможностей нет )
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054697
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дегтярев Евгений
hvlad
Дегтярев Евгений
и многократные перечитывания одних и тех же данных
С чего бы это ?

с одним читателем мне понятно как избежать повторных чтений, со многими нет.
Мне отсюда не видно, что там за читатели и какая вообще задача стоит.
...
Рейтинг: 0 / 0
архивариус: обсуждение особенностей POST_EVENT на классике(CS)
    #40054710
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Мгновенно найдётся чудак
Настоящему чудаку для такого дела эвенты не потребуются!

Я присоединюсь к Владу, интересно для чего оно нужно вообще?
Модель угроз, поведение и т.п.
А то раньше я как-то вьюхи не жаловал, потом распробовал, замутил пару-тройку дюжин... мож и эвенты куда-нидь прикручу... абидна, понимаешь, у всех есть, а у меня нет.
...
Рейтинг: 0 / 0
71 сообщений из 71, показаны все 3 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / архивариус: обсуждение особенностей POST_EVENT на классике(CS)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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