Реализация REST и SOAP сервисов с помощью WCF

6,531 views
6,271 views

Published on

На сегодняшний день одним из важнейших направлений в области разработки ПО является направление (веб)-сервисов. Сервисы позволяют строить большие распределенные системы. При этом подходов к построению сервисов сегодня как минимум два - SOAP и REST. В докладе расскажу как реализовать их при помощи WCF

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,531
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
55
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Реализация REST и SOAP сервисов с помощью WCF

  1. 1. akireev@codemastersintl.com
  2. 2. Веб-сервис - это программно-аппаратнаясистема, доступная посредством сети ииспользующая стандартизованный протоколсообщений
  3. 3. Технологии для реализации веб-сервисов
  4. 4. Технологии для реализации веб-сервисов 1998
  5. 5. ЗапросОтвет
  6. 6. Технологии для реализации веб-сервисов 1998
  7. 7. Технологии для реализации веб-сервисов 1998 1998
  8. 8. Технологии для реализации веб-сервисов SOAP 1.2 Утвержден W3C 1998 1998 2003
  9. 9. Simple object access protocol FTPSMTP XML HTTP
  10. 10. расширяемыйЗаголовок предназначен всемИспользуется для: -цифровой подпись -роутинга -поддерживания сессий предназначеноТело конечному узлуМожет быть зашифровано
  11. 11. WS-I – Web services interoperability organization. Специализируется наразработке Best practices для улучшения совместимости веб-сервисовW3C – World Wide Web Consortium. Разрабатывает и внедряеттехнологические стандарты для всемирной паутины WS-* – рекомендации от W3C как использовать стандарты веб- сервисов чтобы улучшить совместимость. SOAP Протокол для посылки сообщений Язык для описания программных интерфейсов WSDL веб-сервиса UDDI Стандарт для индексации веб-сервисов.
  12. 12. svcutil.exe Contracts.dll WSDL – язык описания веб-сервисов Современные языки программирования позволяют автоматически генерировать клиентский код для доступа к сервисам. И позволяет генерировать WSDL по коду сервиса
  13. 13. Windows Communication Foundation – фреймворк наплатформе .Net для создание веб-сервисов.WCF– поддерживает и опирается на стек протоколов WS-*.Некоторые стандарты WS-* поддерживаемые WCF: WS-PolicyAttachment WS-Addressing WS-Policy WS-MetadataExchang WS-Security WSDL 1.1 WS-Trust SOAP 1.2WS-ReliableMessaging WS-SecureConversation SOAP 1.1 WS-AtomicTransaction WS-Coordination
  14. 14. В WCF каждый сервис может иметь одну или более точек привязки endpoint.Каждый endpoint можно настроить с различными биндингами, которые задают наборподдерживаемых WS-* стандартов basicHttpBinding SOAP v1.1 WS Basic profile WSHttpBinding SOAP v1.2 WS-Addressing WS-Security WS-AtomicTransaction WS-Trust WS-ReliableMessages WSFederationHttpBinding + WS-Federation
  15. 15. Технологии для реализации веб-сервисов SOAP 1.2 Утвержден W3C 1998 1998 2003
  16. 16. Технологии для реализации веб-сервисов SOAP 1.2 Утвержден W3C 2004 1998 1998 2003
  17. 17. REST - Representational State Transfer Основан на протоколе HTTP Различные представления JSON, XML (POX) … Любит принцип KISS – Keep it small and simple State Less – не хранит состояние Работает с ресурсами по принципу CRUDRESTful web service - веб-сервис, созданный с использованиемпротокола HTTP и принципов REST
  18. 18. GET - получает ресурсы. Никогда не изменяет объект/chat/messages – получить все сообщения/chat/messages/23 – получить сообщения с id равным 23/chat/messages?user=vpupkin – получить сообщения Васи/chat/users/vpupkin/messages – получить сообщения ВасиPOST - создает ресурс. PUT – обновляет ресурс.POST /chat/messages PUT /chat/messages/13 DELETE – удаляет ресурс DELETE /chat/messages/13
  19. 19. «Нативные» технологии WCF 3.5 + WCF REST Starter Kit WCF 4 + ASP.Net Web API (ex WCF Web API) входит в MVC 4Third Party технологии OpenRasta ServiceStack
  20. 20. Кто круче REST или SOAP?
  21. 21. Vs WS-* SOAP RESTСемейство протоколов и Набор архитектурных решенийстандартовИспользует HTTP как Базируется на протоколе HTTPтранспортный протоколРаботает с операциями Работает с ресурсамиСтандарты Простота
  22. 22. Vs WS-* SOAP RESTМожет работать поверх FTP, БыстрееSMTP, TCPГенерация proxy по WSDL Лучше масштабируетсяПоддерживает фичи в видетранзакций, сессий и прочее Проще
  23. 23. Vs WS-* SOAP RESTКогда необходимы сложные Когда нельзя сгенерироватьфичи вроде транзакций, proxy клиента по WSDL (iOs,роутинга и т.д. javascript...)Когда возможны разные Для CRUD архитектурпротоколы взаимодействия Когда нужна высокаяКогда система состоит из масштабируемость иразнородных узлов производительность
  24. 24. REST и SOAP. Одно другому не мешает!

×