2013-08-14 3 views
3

Я читаю о проблемах параллельного и сетевого программного обеспечения в шаблон ориентированного программного обеспечения доступа об архитектура Service 2.статическая и динамическая эволюция услуг

часто включает ссылающихся удаленных операций на resuable компонентов, таких как обслуживание событий OMG, и т.д. Поддержка статической и динамической эволюции сервисов и приложений - это анкерный ключ вызов в сетевой программной системе.

Evoution может происходить следующим образом

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

Это еще более сложная задача, чтобы определить, как получить доступ к услугам, которые сконфигурированные в систему «по требованию» и чьи реализации неизвестно, когда система была разработана origanally. Здесь задача дизайна в два раза.

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

  2. Во-вторых, приложение должно интегрировать эти службы в свой собственный поток управления и обработку последовательно и надежно, даже во время выполнения.

мне нужна ваша помощь в понимании выше текста, отвечая на следующие вопросы.

  1. Что подразумевает автор под термином «Интерфейсы и возможности взаимодействия между ролью службы компонентов могут меняться, часто во время выполнения»? Попросите объяснить с помощью простого примера.

  2. Что автор выражает двумя оговорками, упомянутыми выше по требованию. Запросите elobartion над двумя точками.

Спасибо за ваше время и помощь.

ответ

0

1.Что делает автор под термином «Интерфейсы и возможности взаимодействия между ролями службы компонента могут меняться, часто во время выполнения»?

Я точно не уверен. Интерфейсы изменить сверхурочно, потому что:

  • Новые технологические стандарты могут быть приняты, - говорят переход от SOAP к REST, или формы XML в JSON, но это будет происходить медленно сверхурочно через развертывание - где, как для меня «среда» является память пространство, в котором все работает, и я не вижу, как интерфейсы меняются сами по себе быстро - иначе как можно было бы интегрироваться с ними?
  • Сам интерфейс API или интерфейса изменяется для удовлетворения потребностей бизнеса.

2.Что Автор не имею в виду два момента, упомянутые проблемы, по требованию которых говорилось выше.

Хммм, хорошие образцы дизайна имеют тенденцию хорошо выживать (они никогда не меняются, потому что они никогда не сломаны - как SOLID). Книга, на которую вы ссылаетесь, была написана в 2000 году, я думаю - с тех пор многое изменилось, поэтому пока модель может сохраниться, возможно, то, как мы теперь ее описали, изменилось (т.е. то, что он подразумевает под «экспорт новых сервисов», открыто к интерпретации) ...

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

Устранение проблем (основные вещи OO), все части вашего приложения не должны (не должны) знать, что делают другие части внутри; аналогично, если кто-то (включая внешнюю систему) удовлетворяет интерфейсу, то кто заботится о том, как это делается внутри.

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

Я принимаю это означает, что программа не должна сломаться, она shoudl всегда компилировать, и если приложение динамически создавать и выполнять код (скажем, на основе пользовательского ввода), то там должно быть чеки в месте так что динамический код также не нарушает приложение.

Смежные вопросы