|
|
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Объясните как справляться с такой ситуацией: два пользователя открывают программу на разных компьютерах. У обоих отображается таблица с данными. Второй юзер изменил данные в таблице и сохранил изменения в БД. В это время на мониторе у первого пользователя отображаются старые данные. Как быть, добавить кнопку 'обновить таблицу', или же запрограммировать автоматический рефреш данных? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 21:27:26 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Как сделаешь ... Если речь о веб-приложении (сайт, страница), то есть решения от самых простых - polling, когда страница раз в какое-то время опрашивает сервер на предмет изменений, до наиболее "продвинутых" - веб-сокетов. Также есть промежуточные решения. Главное - определиться, что надо ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 21:53:29 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
IDVsbruck, Речь идет о десктоп приложении. Какиев данном случае есть подхлды, кроме тех, о которых я писала? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 22:30:57 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
JulTРечь идет о десктоп приложении. Какиев данном случае есть подхлды, кроме тех, о которых я писала? 1. По таймеру спрашиваем БД были ли обновления. Например трекая версию таблицы с каждым изменением в триггере. Если были обновления - перечитываем. 2. Отслеживаем в БД все клиентские сессии. При обновлении, вызываем хранимку, которая рассылает всем клиентам нотификации. Клиент сам или через Java сервер в базу ходит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 22:42:18 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Спасибо. Клиент в базу ходит сам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 22:45:40 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
JulTСпасибо. Клиент в базу ходит сам И какая база данных? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 22:47:51 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
JulT, а это действительно очень нужно? И если да, то зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 22:55:00 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
BlazkowiczJulTСпасибо. Клиент в базу ходит сам И какая база данных? Mysql, а что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:07:52 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
javapeckerJulT, а это действительно очень нужно? И если да, то зачем? Нужно. Вот сидит первый пользователь, смотрит на монитлр,называет клиенту цены,которые видит на экране,а цены уже другие потому что второй пользователь их изменил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:10:21 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Есть 2 основных паттерна - оптимистическая и пессимистическая блокировка, примеров полно. Плюс запрос свежих данных перед началом редактирования конкретной записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:29:29 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
ivanraЕсть 2 основных паттерна - оптимистическая и пессимистическая блокировка, примеров полно. Плюс запрос свежих данных перед началом редактирования конкретной записи. Вопрос вообще не о редактировании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:31:02 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
JulTНужно. Вот сидит первый пользователь, смотрит на монитлр,называет клиенту цены,которые видит на экране,а цены уже другие потому что второй пользователь их изменил Цены не могут меняться ежеминутно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:31:56 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
JulTMysql, а что? https://blogs.oracle.com/kay/entry/calling_java_code_in_mysql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:33:17 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Цены не могут меняться ежеминутно. На биржах могут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:44:23 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Йуный джавистЪНа биржах могут. На биржу не похоже. Там вообще нужен постоянный server push. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2013, 23:47:34 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
Всем спасибо, буду думать. И конечно же это не биржа) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2013, 01:45:44 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
BlazkowiczivanraЕсть 2 основных паттерна - оптимистическая и пессимистическая блокировка, примеров полно. Плюс запрос свежих данных перед началом редактирования конкретной записи. Вопрос вообще не о редактировании. Возможно, я немного вперед забежал, но закончится все равно этим, пользователь клиенту цифры скорее всего не для интереса называет. От конечной цели надо все строить. Ну а если просто для интереса - то конечно, обычный рефреш, если это простой клиент-сервер, либо подписка, если есть сервер приложений ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2013, 15:57:11 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
ivanra, Блокировки я освоила пару постов назад,спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2013, 16:19:34 |
|
||
|
Как лучше реализовать....
|
|||
|---|---|---|---|
|
#18+
JulTБлокировки я освоила пару постов назад,спасибо) Вот и хорошо. Вот почему я предлагаю начать все с блокировок: При пессимистической блокировке перед началом редактирования запись помечается - и это первое оповещение/рефреш. Для "наблюдающего" пользователя должен быть выведен маркер, или даже убрана данная запись с экрана. После окончания редактирования - второе оповещение/рефреш, возможно, пометка записи в течение какого-то времени. Возможна и обратная ситуация - если цена озвучена, то ее следует помечать, и оповещать уже редактирующего пользователя. Оптимистическая блокировка тоже поможет, но уже в конце транзакции с клиентом. В любом случае, чтобы разруливать конфликты, нужны блокировки, хотя тут и не один паттерн в чистом виде. А конфликты будут, так как применяемая схема - пользователь озвучивает что-то клиенту недостаточно надежна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2013, 10:22:15 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38172314&tid=2129865]: |
0ms |
get settings: |
17ms |
get forum list: |
30ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
77ms |
get topic data: |
24ms |
get forum data: |
6ms |
get page messages: |
114ms |
get tp. blocked users: |
3ms |
| others: | 350ms |
| total: | 637ms |

| 0 / 0 |
