SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 20.02.2023 21:36:42

nikizumov
Участник
Зарегистрирован: 20.02.2023
Сообщений: 2

Можно ли в mysql организовать нотификацию с?

Меня интересуют возможности MySQL по поддержанию механизма нотификации либо серверного приложения, написанного на с++ либо подписанных к базе клиентов.Есть ли такие возможности у  Mysql?

Неактивен

 

#2 21.02.2023 09:45:29

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Можно ли в mysql организовать нотификацию с?

Здравствуйте. А о какого вида нотификациях идет речь? Например, можно написать UDF и использовать в триггерах. Это то, что нужно?

Неактивен

 

#3 21.02.2023 13:39:06

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Можно ли в mysql организовать нотификацию с?

Вон даже какое-то готовое решение есть (не знаю, насколько рабочее):
https://github.com/Cyclonecode/mysql-notification

UPD: Посмотрел на исходники, они не очень. Я бы лучше посылал UDP в какой-то well-known порт, тогда оно не будет зависеть от того, перезагрузится демон, в которого отправляются события, или нет.

Отредактированно paulus (21.02.2023 13:46:12)

Неактивен

 

#4 22.02.2023 10:32:10

nikizumov
Участник
Зарегистрирован: 20.02.2023
Сообщений: 2

Re: Можно ли в mysql организовать нотификацию с?

Речь идет об оповещении клиентов об изменении базы данных, чтобы они могли сделать запрос на обновление данных.
Варианта тут два клиенты подписываются к базе данных внося свои данные в специальную таблицу подписчиков а база при наступлении нужного события информирует их отправляя сообщение если такая возможность есть у mysql.
второй вариант на сервере еще работает серверное приложение и клиенты подписываются к нему. База данных направляет уведомление серверному приложению которое рассылает оповещения подписанным клиентам, которые потом делают запрос к базе и обновляют данные.

Неактивен

 

#5 22.02.2023 13:55:52

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Можно ли в mysql организовать нотификацию с?

Ну, напрямую MySQL не умеет рассылать сообщения, более того, протокол не подразумевает инициацию передачи данных с серверной стороны, поэтому лучший костыль, который в этом месте можно придумать, это long polling. Можно соорудить на GET_LOCK, например, но будет точно очень много перезапросов в момент изменения, поэтому скорее второй вариант.

А второй вариант, видимо, нужно написать на базе UDF, как описано в предыдущем сообщении.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson