powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Обрыв соединения
40 сообщений из 40, показаны все 2 страниц
Обрыв соединения
    #39300154
Semen81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Вот такой вопрос созрел. Имеется две системы, обмен между которыми происходит посредством web service. Одна система (клиент) посылает в сервис действие, сервис у себя (сервер) создает кое какие проводки (все в пределах секунды) и возвращает результат действия - успешно или нет, и в зависимости от ответа происходит определенные действия на клиенте. Так вот возникают иногда обрывы соединения, т.е. действие отправляется, обрыв, нет ответа и соответственно нет продолжения, т.е. прекращение операции. Но сервер, получивший через сервис действия не знает об обрыве и успешно осуществляет проводки. И это приводит к разсинхронизации двух систем по действиям. Вопрос: какие есть механизмы защиты от этого?
P.S.: клиент - это касса, сервер - система CRM, действия - это процесс списания бонусов, которое должна быть онлайн, при обрыве связи - на кассе нет списания, т.е. оплата бонусами не возможна, а в CRM - списание со счета проходит успешно.
Спасибо
...
Рейтинг: 0 / 0
Обрыв соединения
    #39300190
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Semen81, используйте очереди для сервисов. Например, Rabbit MQ, IBM WebShpere MQ, MSMQ.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39300798
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronSemen81, используйте очереди для сервисов. Например, Rabbit MQ, IBM WebShpere MQ, MSMQ.
И что это даст?
...
Рейтинг: 0 / 0
Обрыв соединения
    #39300835
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Semen81, 19606724
>... Имеется две системы ...
Рассмотрите вариант циклической нумерации информационных пакетов действия и инфопакетов ответа. И введите дополнительный метод для запроса сервера на получение номера пакета, последнего штатно выполненного действия.

С уважением,
Владимир.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39301009
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAAxeleronSemen81, используйте очереди для сервисов. Например, Rabbit MQ, IBM WebShpere MQ, MSMQ.
И что это даст?
Да, неудачный совет дал я.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39301631
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВМоисеев>Semen81, 19606724
>... Имеется две системы ...
Рассмотрите вариант циклической нумерации информационных пакетов действия и инфопакетов ответа. И введите дополнительный метод для запроса сервера на получение номера пакета, последнего штатно выполненного действия.

С уважением,
Владимир.
Не могли бы Вы пояснить последнее предложение? Предлагаете, чтобы сервер запрашивал у кассы номер пакета, или наоборот?
...
Рейтинг: 0 / 0
Обрыв соединения
    #39303177
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Semen81Вопрос: какие есть механизмы защиты от этого?

Создавать логическую транзакцию. Не техническую. Логическую.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39303201
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Semen81,

Если есть возможность организовать обратный запрос, то сделать так:

1. Инициировать транзакцию: клиент посылает в сервис действие и получает код транзакции.
2. Сервис, завершив транзакцию, обращается к клиенту и посылает результат действия. Если необходимо, клиент при первом обращении говорит сервису, куда послать результат действия.

Если нет возможности организовать обратный запрос, то так:

1. Инициировать транзакцию: клиент посылает в сервис действие и получает код транзакции.
2. Через некоторое время (допустим, через 1-2 секунды), клиент обращается к сервису опять и с помощью полученного кода транзакции выясняет результат операции. Если операция ещё не завершена, клиент выжидает какое-то время и опять опрашивает, до тех пор пока не получит результат.

Можно сделать систему более надёжной: когда клиент, получив результат действия, должен ещё послать подтверждение, что он согласен с этим результатом, таким образом завершив транзакцию. В таком случае состояние всей системы в целом будет гарантировано согласовано.

Такая схема не зависит от используемых технологий.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39303224
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>skyANA, 1 сен 16, 08:26 [19615609]
>...Предлагаете, чтобы сервер ...
В моём представление, за установление связи отвечает клиент. След. при потере оной клиент начинает телодвижения, а именно, пытается восстановить связь. При восстановлении связи посылает серверу (серверу приложений - многозвенка) запрос на получение номера последнего штатно выполненного действия и принимает нужное решение.

С уважением,
Владимир
...
Рейтинг: 0 / 0
Обрыв соединения
    #39303586
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Semen81Вопрос: какие есть механизмы защиты от этого? Распределённые транзакции .
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304741
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На мой взгляд касса вообще не должна зависеть от какой-то там CRM, что является каким-то там сервисом, или тетрадью тёти Маши.
И следовательно вообще не должна ждать ответа от сервера, где сервис развёрнут, или из комнаты, где тётя Маша сидит.

Следовательно мне видится такое решение: промежуточный буфер (файл, таблица, коллекция, очередь) на стороне кассы и синхронизация по мере доступности сервиса.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304742
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eventual consistency, йоба!
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304834
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAeventual consistency, йоба!

Это из другой оперы. Ты говоришь про согласованность данных, а речь идёт о бизнес-транзакциях. Было снято бабло или нет. При чём даже если бабло и было снято, остаток может не измениться, или измениться не соответственно снятому баблу, соответственно что ты там будешь согласовывать по данным -- совершенно не понятно. Тут либо действие выполнено, либо нет.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304837
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, я о том, что факт списания бонусов в CRM можно и потом отразить.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304859
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVostt, я о том, что факт списания бонусов в CRM можно и потом отразить.

Ты смотришь на ситуацию с точки зрения данных. А проблема у ТС в том, чтобы определить факт успешного выполнения операции. А что там надо сделать в результате успеха -- до фанаря, бонусы списать, отправить письмо, отобразить поздравительный банер, выдать ачивку — вопрос другой.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304872
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CRM хранит историю взаимоотношений с клиентом. Историю, Карл :)
Выполнение бизнес-транзакций, операций и т.д. и т.п. не должно от неё зависеть.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39304931
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANACRM хранит историю взаимоотношений с клиентом. Историю, Карл :)
Выполнение бизнес-транзакций, операций и т.д. и т.п. не должно от неё зависеть.

Что-то у тебя всё с ног на голову перевернулось. С какой кстати, клиент должен знать о какой-то там истории?

Касса: я собираюсь деньги списать, давай платить бонусами?
CRM: оплата прошла, бонусы списаны!
Касса: спасибо, говорю что всё оплачено.

Что присходит на деле:

Касса: я собираюсь деньги списать, давай платить бонусами?
CRM: оплата...аф34ывпыв... обрыв связи...
Касса: чёрт! ну хрен с ним, извини, чувак — не получилось.

Скажи мне, при чём тут история? Кассе надо знать, прошла оплата или нет. Списались ли бонусы при этом у CRM, или что там с ними произошло, кассе по барабану и фиолетово совершенно.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305278
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANACRM хранит историю взаимоотношений с клиентом. Историю, Карл :)
Выполнение бизнес-транзакций, операций и т.д. и т.п. не должно от неё зависеть.

Что-то у тебя всё с ног на голову перевернулось. С какой кстати, клиент должен знать о какой-то там истории?

Касса: я собираюсь деньги списать, давай платить бонусами?
CRM: оплата прошла, бонусы списаны!
Касса: спасибо, говорю что всё оплачено.

Что присходит на деле:

Касса: я собираюсь деньги списать, давай платить бонусами?
CRM: оплата...аф34ывпыв... обрыв связи...
Касса: чёрт! ну хрен с ним, извини, чувак — не получилось.

Скажи мне, при чём тут история? Кассе надо знать, прошла оплата или нет. Списались ли бонусы при этом у CRM, или что там с ними произошло, кассе по барабану и фиолетово совершенно.
С чего ты взял, что:
1. именно так всё устроено?
2. что это правильно?

ТС написал: "Имеется две системы, обмен между которыми происходит посредством web service". Не одна система, состоящая из кассы и CRM, а две.
Дак вот я выступаю за то, что первая система должна уведомлять последнюю постфактум :)
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305587
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAС чего ты взял, что:
1. именно так всё устроено?
2. что это правильно?

Из сообщения ТС. Ну ещё в свой хрустальный шар пристально смотрел. Зуб даю, всё именно так

skyANAТС написал: "Имеется две системы, обмен между которыми происходит посредством web service". Не одна система, состоящая из кассы и CRM, а две.

Именно. Две. Независимые. Каким боком тут eventual consistency упала — не понятно до сих пор.


skyANAДак вот я выступаю за то, что первая система должна уведомлять последнюю постфактум :)

Ты бы пояснил что ты конкретно имеешь в виду. Конкретный механизм взаимодействия. А то какой-то буффер, какая-то синхронизация... О чём ты вообще? Это две _разных_ системы. Тем более речь вообще не шла о согласованности данных. Речь шла о согласованности действий. В общем у тебя какая-то каша в рассуждениях. Конечно можно присобачить какую-нибудь модную технику ради техники, только нафиг она нужна.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305652
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, о какой модной технике речь? Тебе слово буфер расшифровать? :)
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305714
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVostt, о какой модной технике речь? Тебе слово буфер расшифровать? :)
hVosttТы бы пояснил что ты конкретно имеешь в виду. Конкретный механизм взаимодействия.

Я написал что нужно, хотя если хочешь, можешь в догонку и слово буфер расшифровать ))
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305732
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Semen81Всем привет. Вот такой вопрос созрел. Имеется две системы, обмен между которыми происходит посредством web service. Одна система (клиент) посылает в сервис действие, сервис у себя (сервер) создает кое какие проводки (все в пределах секунды) и возвращает результат действия - успешно или нет, и в зависимости от ответа происходит определенные действия на клиенте. Так вот возникают иногда обрывы соединения, т.е. действие отправляется, обрыв, нет ответа и соответственно нет продолжения, т.е. прекращение операции. Но сервер, получивший через сервис действия не знает об обрыве и успешно осуществляет проводки. И это приводит к разсинхронизации двух систем по действиям. Вопрос: какие есть механизмы защиты от этого?
P.S.: клиент - это касса, сервер - система CRM, действия - это процесс списания бонусов, которое должна быть онлайн, при обрыве связи - на кассе нет списания, т.е. оплата бонусами не возможна, а в CRM - списание со счета проходит успешно.
Спасибо

В чем состоит "рассинхронизация"?
Т.е. если оборвалась связь клиент не знает, как закончилась транзакция?
Так это будет известно только после восстановления связи.
После того как связь восстановлена клиент должен убедиться в результате конкретной транзакции, иначе все будет разболтано.

Каждый запрос от клиента к серверу имеет свой ид, клиент долбит сервис запросом с одним и тем же ид пока не получит ответ, сервис
отрабатывает запрос с определенным ид только один раз
Т.е. для сервиса должен быть еще один запрос от клиента, подтверждающий транзакцию, если его нет - он должен не делать коммит или откатить и т.д.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305781
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Клиент в запрос вставляет ид операции, если от сервиса нет ответа, заносит его в "плохую" очередь.
При возобновлении связи, первым делом шлет плохие ид и сервер отменяет операции, если они были.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39305906
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAhVostt, о какой модной технике речь? Тебе слово буфер расшифровать? :)
hVosttТы бы пояснил что ты конкретно имеешь в виду. Конкретный механизм взаимодействия.

Я написал что нужно, хотя если хочешь, можешь в догонку и слово буфер расшифровать ))
Что я конкретно имею в виду: первая система (касса) выполняет списание бонусов и факт этого списания заносит в свою табличку, или коллекцию, или файл, или...
Некий фоновый процесс (сервис, консьюмер, брокер) разгребает содержимое данной таблички, или коллекции, или файла и информацию по выполненым операциям отсылает всем внешним системам, что заинтересованы в них.
В данном случае одна такая система - CRM.

Так понятно?
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306015
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЧто я конкретно имею в виду: первая система (касса) выполняет списание бонусов и факт этого списания заносит в свою табличку, или коллекцию, или файл, или...

Я думаю там в любом случае операции с бонусами как-то фиксируются. Незачем заводить ещё одну какую-то табличку, коллекцию или файл.

skyANAНекий фоновый процесс (сервис, консьюмер, брокер) разгребает содержимое данной таблички, или коллекции, или файла и информацию по выполненым операциям отсылает всем внешним системам, что заинтересованы в них.

А если операция не удалась и в табличку ничего не записано. Пусть сервисы ждут у моря погоды? Или выжидают время и считают, что всё — каюк? Хрень какая-то.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306081
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAЧто я конкретно имею в виду: первая система (касса) выполняет списание бонусов и факт этого списания заносит в свою табличку, или коллекцию, или файл, или...

Я думаю там в любом случае операции с бонусами как-то фиксируются. Незачем заводить ещё одну какую-то табличку, коллекцию или файл.

skyANAНекий фоновый процесс (сервис, консьюмер, брокер) разгребает содержимое данной таблички, или коллекции, или файла и информацию по выполненым операциям отсылает всем внешним системам, что заинтересованы в них.

А если операция не удалась и в табличку ничего не записано. Пусть сервисы ждут у моря погоды? Или выжидают время и считают, что всё — каюк? Хрень какая-то.
Если операция не удалась, то не удалась. А сервисы ничего в моей схеме не ждут. :)
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306196
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЕсли операция не удалась, то не удалась. А сервисы ничего в моей схеме не ждут. :)

Поэтому и не применимо к задачам ТС
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306203
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAЕсли операция не удалась, то не удалась. А сервисы ничего в моей схеме не ждут. :)

Поэтому и не применимо к задачам ТС
Не понимаю почему. Хотелось бы увидеть объяснение.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306239
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Semen81, 30 авг 16, 12:05 [19606724]
>...Имеется две системы...
Ситуация может быть более сложной, обрыв соединения может быть обусловлен клиентским компьютером - потеря питания, сбой и пр. Новая сессия может быть открыта и на другом компьютере. Поэтому информация о последнем штатно выполненном действии должна хранится на сервере данных в параметрах оператора. По запросу он должен получить исчерпывающую информацию по последнему штатному действию для принятия решения.

С уважением,
Владимир.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306287
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНе понимаю почему. Хотелось бы увидеть объяснение

Потому что нет конкретного и однозначного ответа на вопрос: выполнилось действие или нет, и с каким результатом. Всё, что есть: это какая-то рассылка брокером фактов списаний бонусов.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306345
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAНе понимаю почему. Хотелось бы увидеть объяснение

Потому что нет конкретного и однозначного ответа на вопрос: выполнилось действие или нет, и с каким результатом. Всё, что есть: это какая-то рассылка брокером фактов списаний бонусов.
Как нет, есть в первой системе. Факт списания бонусов - это и есть выполненное действие.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306374
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКак нет, есть в первой системе. Факт списания бонусов - это и есть выполненное действие.

Факт списания боносов это факт списания бонусов :) Он либо есть, либо его нет. А у действия всегда есть какой-то результат. В этом и состоит проблема твоего решения, что ты не видишь разницы.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306441
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAКак нет, есть в первой системе. Факт списания бонусов - это и есть выполненное действие.

Факт списания боносов это факт списания бонусов :) Он либо есть, либо его нет. А у действия всегда есть какой-то результат. В этом и состоит проблема твоего решения, что ты не видишь разницы.
Так в чём проблема-то? Зачем во второй системе, в CRM фиксировать действия из первой системы?
Во время выполнения операции исключения могут вылетать в системе, они логируются. Может и их ещё в CRM передавать?
Типа действие привело к ошибке, давайте это в CRM анализировать.

Давай по другому сформулирую: у нас есть первая система, в ней есть жернал операций. Данные из этого журнала мы передаём другим системам для чего-то: анализа, принятия каких-то решений, просмотра истории своих операций клиентами.

По мне времена взаимодейтсивя клиент сервер давно уже прошли, наступило время распределённой архитектуры.

...
Рейтинг: 0 / 0
Обрыв соединения
    #39306443
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пояснения к картинке:
ИП - интерфейс пользователя

ЛП - логика приложения

ДД - доступ к данным

БД - база данных
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306474
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТак в чём проблема-то? Зачем во второй системе, в CRM фиксировать действия из первой системы?

Потому что:

А) там может сидеть юзер и ожидать реакции системы, не важно какой
Б) сама система может принимать совершенно разные и удивительные решения на основе результата выполнения операции внешней системы
В) на основе операций может генерироваться множество других изменений в данных и артефактов, кроме непосредственно факта списания бонусов
Г) система на основе действий расширяема, без ковыряния левых брокеров, систем рассылки, ведения буферов и таблиц, от которых зависит всё, точка соприкасания систем фокусируется исключительно на действиях, что снижает связанность


skyANAДавай по другому сформулирую: у нас есть первая система, в ней есть жернал операций. Данные из этого журнала мы передаём другим системам для чего-то: анализа, принятия каких-то решений, просмотра истории своих операций клиентами.

Слишком широко. Клиенту важно получить результат выполненной операции, если он её инициировал. Я подозреваю, что некий журнал операций всё равно будет. Но про доставку это «записи», я уже говорил. Это один из кейсов: клиент говорит сервису, куда ему доставить результат и отрубается. Подписка на событие. Зачем клиенту получать вообще все записи из журнала, не ясно.


skyANAПо мне времена взаимодейтсивя клиент сервер давно уже прошли, наступило время распределённой архитектуры

Ну вот. Помнишь ты спрашивал про модные техники? Сам же и сказал
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306565
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAТак в чём проблема-то? Зачем во второй системе, в CRM фиксировать действия из первой системы?

Потому что:

А) там может сидеть юзер и ожидать реакции системы, не важно какой
Б) сама система может принимать совершенно разные и удивительные решения на основе результата выполнения операции внешней системы
В) на основе операций может генерироваться множество других изменений в данных и артефактов, кроме непосредственно факта списания бонусов
Г) система на основе действий расширяема, без ковыряния левых брокеров, систем рассылки, ведения буферов и таблиц, от которых зависит всё, точка соприкасания систем фокусируется исключительно на действиях, что снижает связанность


skyANAДавай по другому сформулирую: у нас есть первая система, в ней есть жернал операций. Данные из этого журнала мы передаём другим системам для чего-то: анализа, принятия каких-то решений, просмотра истории своих операций клиентами.

Слишком широко. Клиенту важно получить результат выполненной операции, если он её инициировал. Я подозреваю, что некий журнал операций всё равно будет. Но про доставку это «записи», я уже говорил. Это один из кейсов: клиент говорит сервису, куда ему доставить результат и отрубается. Подписка на событие. Зачем клиенту получать вообще все записи из журнала, не ясно.


skyANAПо мне времена взаимодейтсивя клиент сервер давно уже прошли, наступило время распределённой архитектуры

Ну вот. Помнишь ты спрашивал про модные техники? Сам же и сказал
Всё что ты тут понаписал, никак не противоречит моей идее.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306572
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttСлишком широко. Клиенту важно получить результат выполненной операции, если он её инициировал. Я подозреваю, что некий журнал операций всё равно будет. Но про доставку это «записи», я уже говорил. Это один из кейсов: клиент говорит сервису, куда ему доставить результат и отрубается. Подписка на событие. Зачем клиенту получать вообще все записи из журнала, не ясно.
Тут под клиентом я имел ввиду человека, что пришёл и купил что-то за бонусы. А в конце месяца сидит дома и смотрит в личном кабинете выписку по операциям за месяц.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306575
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, и кстати раскрой что такое "система на основе действий". Для меня это попахивает управленческим учётом и бизнес-аналитикой и лежит мягко говоря в другой плоскости, чем проблема ТСа.
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306603
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТут под клиентом я имел ввиду человека, что пришёл и купил что-то за бонусы. А в конце месяца сидит дома и смотрит в личном кабинете выписку по операциям за месяц.

Ты пошёл дальше, как я вижу :) Но проблема то обозначена весьма конкретно: одна система делает запрос на выполнение действия к другой системе. Возникает обрыв связи, и клиент считает, что действие не выполнилось. Считать, что действие в любом случае выполнилось клиент тоже считать не в праве.


skyANAhVostt, и кстати раскрой что такое "система на основе действий". Для меня это попахивает управленческим учётом и бизнес-аналитикой и лежит мягко говоря в другой плоскости, чем проблема ТСа.

Система на основе действий, это грубо говоря любой вызов функции и получение результата. В бизнесе, это это можно назвать бизнес-транзакцией. Приплетать сюда какую-то конкретную предметную область вовсе не обязательно.

Представь, что ты вызываешь функцию, но вместо результата получаешь исключение. При этом на самом деле, всё выполнилось ОК, и все необходимые изменения закомитились (списались бонусы, отправились письма и СМС, да мало ли что). Что делать? Организовывать буффер и согласовывать данные?
...
Рейтинг: 0 / 0
Обрыв соединения
    #39306674
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAТут под клиентом я имел ввиду человека, что пришёл и купил что-то за бонусы. А в конце месяца сидит дома и смотрит в личном кабинете выписку по операциям за месяц.

Ты пошёл дальше, как я вижу :) Но проблема то обозначена весьма конкретно: одна система делает запрос на выполнение действия к другой системе. Возникает обрыв связи, и клиент считает, что действие не выполнилось. Считать, что действие в любом случае выполнилось клиент тоже считать не в праве.Вот я и предлагаю разорвать эту зависимость между системами, так как у них разное назначение: выполнить действие полностью в первой системе, результат зафиксировать.
И отдельным процессом переслать результат всем заинтересованым. Весьма распространённая на данный момент практика, да и в прошлом.

hVosttskyANAhVostt, и кстати раскрой что такое "система на основе действий". Для меня это попахивает управленческим учётом и бизнес-аналитикой и лежит мягко говоря в другой плоскости, чем проблема ТСа.

Система на основе действий, это грубо говоря любой вызов функции и получение результата. В бизнесе, это это можно назвать бизнес-транзакцией. Приплетать сюда какую-то конкретную предметную область вовсе не обязательно.Хм... Ты таки об Activity-Based Information System (ABIS) или нет?
...
Рейтинг: 0 / 0
40 сообщений из 40, показаны все 2 страниц
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Обрыв соединения
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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