Как я могу учить, что SOAP не является надежным транспортом? - PullRequest
3 голосов
/ 14 мая 2010

Мне нужно учить, что может быть получен HTTP-вызов SOAP, но вызывающий может не получить ответ из-за сбоя сети (среди других проблем). (Эта проблема заставила WS-ReliableMessaging быть развитой)

Как бы вы, ребята, показали эту проблему разработчику веб-службы, чтобы они могли разрабатывать с учетом возможного получения повторяющихся сообщений?

Проблема в том, что они не понимают, что HTTP-вызов может быть отлично принят сервером и обработан на сервере, но ответ вызывающей стороне может быть потерян.

Ответы [ 4 ]

2 голосов
/ 14 мая 2010

А как насчет диаграммы варианта использования или временной шкалы, демонстрирующей событие отказа во время передачи?

1 голос
/ 17 декабря 2010

Лучший ответ, который я нашел, таков:

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

http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Idempotent_methods_and_web_applications

У SAP есть очень хорошая страница об этой проблеме: http://help.sap.com/saphelp_nw73/helpdata/en/c8/35883707e94534b2bda403237ee523/content.htm

1 голос
/ 14 мая 2010

Почему бы не показать диаграмму сообщений, проходящих назад и вперед между клиентом и сервером во время выполнения SOAP?На этой диаграмме могут быть показаны сообщения, потерянные в какой-то момент, или приходящие дубликаты, или сообщения, поступающие не по порядку.У вас есть две вертикальные линии, представляющие клиент и сервер параллельно друг другу.Затем вы пометили линии (диагональ) между ними для обозначения сообщений.Сообщение, потерянное в транспорте, как X в строке диагностики, прежде чем оно коснется клиента или сервера.Надеюсь, это поможет.

0 голосов
/ 14 мая 2010

Я видел вещи такого типа, описанные в диаграмме последовательности UML. Я думал, что это сработало, и, конечно, диаграммы последовательности будут знакомы большинству разработчиков.

Вы можете получить некоторые хорошие идеи здесь: http://www.eventhelix.com/Realtimemantra/Networking/#HTTP_Sequence_Diagrams

Приветствия

...