powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / web service и разрыв соединения
13 сообщений из 13, страница 1 из 1
web service и разрыв соединения
    #33917383
lumf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
встал вот такой вопрос передо мной.

1. вот зову я метод веб-сервиса
2. метод в свою очередь обращается к DB забирает данные и помечает строки которые забрал
3. возвращаю пользователю результат

и тут самое интересное---рвется соединение и данные не все доходят до пользователя.


что делать дальше? вызовом того же метода я уже не получу нужных мне данных.



заранее всем спасибо
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33917966
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
L>и тут самое интересное---рвется соединение и данные не все доходят до пользователя.
Ну дык... Мало-ли чего в жизни происходит. Может fw шалит? Вообще при использовании
web-сервисов надо быть к этому готовым.

L>что делать дальше? вызовом того же метода я уже не получу нужных мне данных.
Надо делать так, чтобы было можно. Для веба обычно делают блокирову при записи —
т.е. проверка осуществляется не в момент забора данных, а в момент их обновления.
Иначе очень много проблем будет.
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33917977
lumf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Nikolay_Ch, Вы писали:

L>>и тут самое интересное---рвется соединение и данные не все доходят до пользователя.
N_C>Ну дык... Мало-ли чего в жизни происходит. Может fw шалит? Вообще при использовании
N_C>web-сервисов надо быть к этому готовым.

L>>что делать дальше? вызовом того же метода я уже не получу нужных мне данных.
N_C>Надо делать так, чтобы было можно. Для веба обычно делают блокирову при записи -
N_C>т.е. проверка осуществляется не в момент забора данных, а в момент их обновления.
N_C>Иначе очень много проблем будет.

короче решил делать так: важные запросы делать в два шага. запрос и подтверждение. пусть будет чуть дольше, зато надежность повышается
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33917993
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
L>короче решил делать так: важные запросы делать в два шага. запрос и подтверждение. пусть будет чуть дольше, зато надежность повышается
Ну подтвердил ты их, а дальше? Смотри — клиент забрал данные с подтверждением, потом завис, а в базе у тебя строки остались заблокированы. Через некоторое время у тебя все строки будут заблокированы.
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918035
lumf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Nikolay_Ch, Вы писали:

L>>короче решил делать так: важные запросы делать в два шага. запрос и подтверждение. пусть будет чуть дольше, зато надежность повышается
N_C>Ну подтвердил ты их, а дальше? Смотри — клиент забрал данные с подтверждением, потом завис, а в базе у тебя строки остались заблокированы. Через некоторое время у тебя все строки будут заблокированы.


делаю так:

запрос.

допустим здесь я потерял конект и пользователь не знает что произошло с запросом. ну и хрен с ним. по таймеру потом удалю его

пользователь посылает запрос до тех пор пока не получит вразумительный ответ(id записи к примеру)

далее пользователь подтверждает этот запрос пока не получит вразумительный ответ(типа да подтверждено)
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918048
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
L>допустим здесь я потерял конект и пользователь не знает что произошло с запросом. ну и хрен с ним. по таймеру потом удалю его
По какому таймеру????? Это web-сервис — он не может (по-умолчанию) вызвать сам себя. Он вызывается только по запросу клиента.
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918170
mclabman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Например, требуется передать клиенту данные и удалить их из базы.
Существует только один клиент.

Метод GetData начинает транзакцию, отправляя клиенту id транзакции и сами данные. В таблицу транзакций записывается id транзакции и ссылки н данные.

Агент sql сервера периодически проверяет, как давно была начата транзакция и удаляет забытые.

Метод Confirm получает в параметрах id транзакции и удаляет переданные данные и запись о транзакции, а также о других транзакциях, в которых участвуют удаляемые данные. Если в таблице транзакций нет запрошенного id, то клиенту возвращается ошибка - нет такой транзакции. Клиент должен удалить полученные ранее данные и начать снова. Если произошла ошибка соединения, то клиент должен повторить попытку подтверждения транзакции разумное количество раз.

Что я забыл?
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918201
lumf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Nikolay_Ch, Вы писали:

L>>допустим здесь я потерял конект и пользователь не знает что произошло с запросом. ну и хрен с ним. по таймеру потом удалю его
N_C>По какому таймеру????? Это web-сервис — он не может (по-умолчанию) вызвать сам себя. Он вызывается только по запросу клиента.


извиняюсь :) конечно же так. просто я не сказал всей цепочки. есть еще виндовый сервис который обрабатывает эти записи
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918228
stump
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, lumf, Вы писали:

L>Здравствуйте, Nikolay_Ch, Вы писали:

L>>>короче решил делать так: важные запросы делать в два шага. запрос и подтверждение. пусть будет чуть дольше, зато надежность повышается
N_C>>Ну подтвердил ты их, а дальше? Смотри — клиент забрал данные с подтверждением, потом завис, а в базе у тебя строки остались заблокированы. Через некоторое время у тебя все строки будут заблокированы.


L>делаю так:

L>запрос.

L>допустим здесь я потерял конект и пользователь не знает что произошло с запросом. ну и хрен с ним. по таймеру потом удалю его

L>пользователь посылает запрос до тех пор пока не получит вразумительный ответ(id записи к примеру)

L>далее пользователь подтверждает этот запрос пока не получит вразумительный ответ(типа да подтверждено)

Рекомендую посмотреть в сторону спецификаций WS-Transaction и WS-Coordination. Не в плане того чтобы их использовать, а в плане того, что там можно почерпнуть массу здравых идей о том как решаются подобного рода проблемы.
В частности WS-Transaction предлагает с полдюжины протоколов транзакций с подтверждением.
Читаем здесь
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918418
lumf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, stump, Вы писали:

S>Рекомендую посмотреть в сторону спецификаций WS-Transaction и WS-Coordination. Не в плане того чтобы их использовать, а в плане того, что там можно почерпнуть массу здравых идей о том как решаются подобного рода проблемы.
S>В частности WS-Transaction предлагает с полдюжины протоколов транзакций с подтверждением.
S>Читаем здесь


о вот это тема :super: спасибо.
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33918433
stump
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, lumf, Вы писали:


L>о вот это тема :super: спасибо.
Пожалуйста. Только лучше оценочку :)
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33919004
jit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Nikolay_Ch" <49326@users.rsdn.ru>; wrote in message news:2058072@news.rsdn.ru...
>L>допустим здесь я потерял конект и пользователь не знает что произошло с запросом. ну и хрен с ним. по таймеру потом удалю его
> По какому таймеру????? Это web-сервис — он не может (по-умолчанию) вызвать сам себя. Он вызывается только по запросу клиента.

Может-может.
System.ThreadingPosted via RSDN NNTP Server 2.0
...
Рейтинг: 0 / 0
web service и разрыв соединения
    #33919039
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
jit>Может-может.
Во-первых — я сказал по умолчанию.

jit>System.Threading
А во-вторых — это криво и может в любой момент быть прервано. Оставьте web-сервису делать то, для чего он приспособлен и не надо его нагружать вещами, которые ему не свойственны...
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / web service и разрыв соединения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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