|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, ГУИ написан в 1996 году, и исходников у меня нет. если бы было все так просто, я бы даже думать над этим не стал. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 16:35 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
"пуш" вообще термин веб проектов. А не вашего. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 16:36 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
можно все-таки советы по теме? какие технологии можно использовать для Приложения 1 и Приложения 2? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 16:42 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio PetroNotC Sharp, ГУИ написан в 1996 году, и исходников у меня нет. если бы было все так просто, я бы даже думать над этим не стал. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 16:42 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfioЗадача: написать на java центр уведомлений пользователей о событиях в БД. Я думаю что на 80% это будет зависеть от возможностей самой DBMS. Умеет ли она реплицировать события во внешние системы? Есть-ли коробочные парсеры ее логов транзакций? Можно ли построить реплики на уровне application-server? Это было-бы эффективнее. Еще эффективность будет зависеть от компромиссов. Как быстро ты хочешь получать уведомления? Рантайм? Сию-же секунду? Или можно минутку подождать или часик? Эти все вопросы идут вне технических. Но они тоже важны. По фреймворкам здесь не скажу. И мне кажется что это не важно. У тебя важна - интеграция с БД. Протокол. Скорость. И гарантии отсутсвия потерь событий. А Java фреймворк здесь вторичен. Бери хоть Spring хоть Guice. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 16:50 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio можно все-таки советы по теме? какие технологии можно использовать для Приложения 1 и Приложения 2? Если не сломаешь коммиты и транзакции то все делай в бд. Сначала там. Тебе же подменить хранимку надо. Я бы не. Денег на нову,ю систему не дают. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 16:53 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio Hello world можно написать одной строчкой, а можно 100500 с использованием Spring, Hibernate, Cloud и всего прочего. Есть ощущение, что Вы хотите именно второго ))) Но ответ то очевидный - берите любой фреймворк, делайте в нем что хотите, в конце, перед последним return, просто добавите строчку System.out.println( "Hello world" ); - и задача будет решена в полном соответствие с Вашими желаниями. Хотите Web - берите любой фреймворк для Web. Хотите мессенгинг - берите любой вреймворк для отсылки сообщений и делайте через него и так далее и так далее ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 17:00 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
ТС, у вас куча ограничений и условий. Например, что делать если подменили хранимку А, о она вызывается хранимкой Б и т.д. Вы ищите либы и паттерны. Это идиотизм. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 17:04 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, И тема звучит не центр уведомлений, а хакнуть клиент сервер в асинхронный режим. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 17:05 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Зачем хакать? Нормальные СУБД какие-то средства для ассинхронной работы предлагают. Поскольку автор будет делать новое приложение "поверх"/"сбоку" старого GUI - проблем опять таки нет. У нас примерно так же сделаны уведомления для Oracle OeBS модуль для диспетчера. Когда создается заявка, в СУБД дополнительно кидается сообщение через DBMS_AQ, Java приложение запущенное в треи всплывает, показывает простейшее окно со списком новых заявок и пилюкает динамиком - диспетчер посреди ночи просыпается, трет с просоня глаза и начинает разруливать пришедшую заявку уже через стандартный интерфейс OeBS. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 17:34 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, Ну например, клиентский коммит Код: java 1. 2. 3. 4. 5. 6.
И как тут? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 17:59 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, Если только добавить пуш или логи, то проблем нет. Но он хочет не ждать 10 мин синхронного кода друг за другом. А продолжать работать вернув немедленно управление в клиент. Понятно что куча ограничений. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 18:09 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharpтут не любят взлома (нет исходников) Если не сломаешь коммиты и транзакции то все делай в бд. Сначала там. Тебе же подменить хранимку надо. Я бы не. Денег на нову,ю систему не дают. Вы про взлом вообще откуда чего взяли? я ни слова не говорил про взлом. я говорил про всплывающее уведомление в центре уведомлений Windows, поверх GUI клиента БД. Мне кажется, я так и не был понят верно. Давайте на псевдокоде: Хранимая процедура: print_excel() is begin generate_xls_report(...); end; добавление алерта в очередь уведомлений: push_alert_to_user() is begin put_message_to_user(); - тут мы предполагаем что кладем сообщение в очередь AQ/Буфферную таблицу/Pipe end; то, что я хочу в итоге: begin create_job(' print_excel(); push_alert_to_user(); '); - т.е. создаем джоб, который выполнит хранимку без участия пользовательской сессии end; параллельно с этим будет работать изначально описанное мной Приложение 1, которое будет мониторить эту AQ/Pipe/Таблицу, и в случае обнаружения новых записей, вычитывать, и отдавать в Приложение 2. никаких подмен хранимок тут нет совершенно. Это будет новая хранимка, внутри которой будет вызываться старая. И это будет альтернатива существующей, не более того. и уж тем более никакого взлома. я про возраст гуи сказал к тому, что у меня нет возможности переделать его так, чтобы передавать вызов из главного треда в дочерний, а не к тому, что его надо хакать. Повторюсь, мой вопрос - как организовать взаимодействие между Приложением 1 и Приложением 2? как сделать все остальное мне известно. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 18:41 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevУ нас примерно так же сделаны уведомления для Oracle OeBS модуль для диспетчера. Когда создается заявка, в СУБД дополнительно кидается сообщение через DBMS_AQ, Java приложение запущенное в треи всплывает, показывает простейшее окно со списком новых заявок и пилюкает динамиком - диспетчер посреди ночи просыпается, трет с просоня глаза и начинает разруливать пришедшую заявку уже через стандартный интерфейс OeBS. вот именно это мне и нужно. поделитесь опытом, как построены клиент и сервер? и может быть исходники не секретны? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 18:51 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio, ПОДМЕНА пакета это взлом. Как вам не доходит? Дак есть ПОДМЕНА или нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 18:54 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio никаких подмен хранимок тут нет совершенно. Это будет новая хранимка, внутри которой будет вызываться старая. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 18:56 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, у меня такое впечатление складывается, что вы пакеты в БД никогда не писали, либо не видели как работают клиентские ГУИ. Смотрите, есть кнопка "Печатать отчет Ексель". По кнопке вызывается хранимка с ожиданием. я создаю свою новую хранимку, в которой джоб будет вызывать первую хранимку, и называю кнопку "Печать отчета Ексель - новая". Где тут подмена? Если в глазах пользователя, то да, это подмена. но я смогу ему разницу объяснить. однако никаких хаков я тут не вижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:01 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio generate_xls_report(...); generateXLS не идет предварительно хп с подготовкой данных 10мин? ... То есть куча ограничений. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:02 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp wolfio generate_xls_report(...); generateXLS не идет предварительно хп с подготовкой данных 10мин? ... То есть куча ограничений. конечно идет. так в этом и смысл, что эта подготовка отойдет в сессию джоба, и не будет держать сессию пользователя. И про ваш пример. То что я хочу должно в итоге будет выглядеть так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:06 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio, Я написал код КЛИЕНТА))))). Вы его править не можете. Или вы новый клиент пишите? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:08 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio, Коммит есть клиентский и есть серверный. Я говорил именно клиентский для роллбэка НА КЛИЕНТЕ. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:10 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
У вас классика клиен-сервер 90х годов. С длинными транзакциями по 15мин. Логины вероятно от субд. Уверены? Ломайте! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:14 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, мне разговор уходит не туда. Если хотите подискутировать, мой телеграмм https://t.me/Dmwolfy ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 19:27 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
wolfio поделитесь опытом, как построены клиент и сервер? и может быть исходники не секретны? иходники врят ли чем помогут, но в общем-то все очевидно на клиенте в легаси системе: запустили в отдельном процессе наш код для трея в коде для трея: зарегились как трей в операционной системе (не помню какая Java либа используется) создали соединение с сервером m1: ждем прихода сообщения от DBMS_AQ когда сообщение пришло - показываем окошко по закрытию окошка, goto m1 на сервере: DBMS_AQ.положит_сообщение_в_очередь() всякие сложности типа создания Java Bean для OeBS и Oracle Forms опускаю ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2021, 20:11 |
|
|
start [/forum/topic.php?fid=59&msg=40099855&tid=2120338]: |
0ms |
get settings: |
16ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
37ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
398ms |
get tp. blocked users: |
0ms |
others: | 363ms |
total: | 825ms |
0 / 0 |