Каковы самые большие преимущества перехода с n-уровня на SOA?
В моей компании мы в настоящее время используем классическую N-уровневую архитектуру, использующую NHibernate в качестве нашего персистентного слоя с объектами fat. Видя много проблем с этим шаблоном, таких как полное увлажнение графа объектов, когда сущности извлекаются из базы данных, мы искали другие альтернативы.
В этом процессе мы перешли к более масштабируемой архитектуре команд и запросов, и теперь мы изучаем жизнеспособность SOA.
В вашем опыте, что такое самые большие преимущества SOA над n-уровнем. Сталкивались ли вы с какими-либо серьезными препятствиями?
И советы и материалы для чтения были бы полезны.
2 ответа:
Помимо масштабируемости SOA предлагает архитектурную гибкость. Если вы решите в какой-то момент переместить свое приложение из WebForms в Silverlight, оба могут воспользоваться равными преимуществами хорошо разработанного интерфейса SOA.
Вы также можете решить в какой-то момент предложить новую услугу, которая использует преимущества некоторых функций и/или данных в вашем текущем предложении. Вы просто создаете новое приложение, которое имеет право доступа к существующему интерфейсу, и уходите.