Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Пара слов про
Константин Буркалёв, @KSDaemonMoscowJS, июль 2014
≠
WAMP
Windows, Apache,
MySQL, PHP
Протокол прикладного уровня, 1
реализует 2 паттерна:
• Publish/Subscribe (PubSub)1
• Remote Procedure Calls (RPC)
=
WAMP
Основные компоненты и понятия
• Идентификаторы ресурсов
• Транспорт
• Сериализатор
• Сессия
• Realm - домен, namespace
• P...
Архитектура
Идентификаторы ресурсов
• Подписок
• Процедур
• Ошибок
Необходимы для:
Представляют собой URI
• system.send.file
• chat.mes...
Сериализация и типы данных
• integer
• string
• bool
• list (array)
• dict
Поддерживаемые сериализаторы:
• JSON • MsgPack
...
Сообщения и полезная нагрузка
• [HELLO,	
  Realm|uri,	
  Details|dict]	
  
1
• [PUBLISH,	
  Request|id,	
  Options|dict,	
...
Транспорт
• Websocket
• Raw TCP
• HTTP long-polling (в разработке)
• Unix sockets
• В основе лежат сообщения
• Сообщения у...
Транспорт и сессия
Клиент Роутер
Транспорт и сессия
HELLO
Клиент Роутер
Транспорт и сессия
HELLO
WELCOME
Клиент Роутер
Транспорт и сессия
HELLO
WELCOME
ABORT
Клиент Роутер
Транспорт и сессия
HELLO
WELCOME
GOODBYE
ABORT
Клиент Роутер
Транспорт и сессия
HELLO
WELCOME
GOODBYE
ABORT
GOODBYE
Клиент Роутер
Транспорт и сессия
HELLO
WELCOME
GOODBYE
ABORT
GOODBYE
GOODBYE
Клиент Роутер
Транспорт и сессия
HELLO
WELCOME
GOODBYE
ABORT
GOODBYE
GOODBYE
GOODBYE
Клиент Роутер
Publish / Subscribe
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
ERROR
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
ERROR
PUBLISH
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
ERROR
PUBLISH
PUBLISHED
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
ERROR
PUBLISH
PUBLISHED
ERROR
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
ERROR
PUBLISH
PUBLISHED
ERROR
EVENT
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
UNSUBSCRIBE
ERROR
PUBLISH
PUBLISHED
ERROR
EVENT
Publisher Broker Subscriber
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
UNSUBSCRIBE
UNSUBSCRIBED
ERROR
PUBLISH
PUBLISHED
ERROR
EVENT
Publisher Broker Sub...
Publish / Subscribe
SUBSCRIBE
SUBSCRIBED
UNSUBSCRIBE
UNSUBSCRIBED
ERROR
ERROR
PUBLISH
PUBLISHED
ERROR
EVENT
Publisher Brok...
Remote Procedure Calls
Caller Dealer Callee
Remote Procedure Calls
REGISTER
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
CALL
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
CALL
INVOCATION
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
CALL
INVOCATION
YIELD
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
CALL
INVOCATION
YIELD
ERROR
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
CALL
RESULT
INVOCATION
YIELD
ERROR
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
ERROR
CALL
RESULT
INVOCATION
YIELD
ERROR
ERROR
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
UNREGISTER
ERROR
CALL
RESULT
INVOCATION
YIELD
ERROR
ERROR
Caller Dealer Callee
Remote Procedure Calls
REGISTER
REGISTERED
UNREGISTER
UNREGISTERED
ERROR
CALL
RESULT
INVOCATION
YIELD
ERROR
ERROR
Caller D...
Remote Procedure Calls
REGISTER
REGISTERED
UNREGISTER
UNREGISTERED
ERROR
ERROR
CALL
RESULT
INVOCATION
YIELD
ERROR
ERROR
Ca...
Профили
• Basic profile
• Advanced profile
Набор функциональных возможностей
в рамках каждого паттерна (PubSub, RPC)
Advanced profile
• Управление сессией
• Аутентификация
• Heartbeat
Advanced profile
• Publish / Subscribe
• белый и черный списки
• идентификация издателя
• подписки по паттернам
• метасобыт...
Advanced profile
• Remote Procedure Calls
• белый и черный списки
• идентификация вызывающего
• регистрация RPC по паттерна...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Browser
Embedded
app
client
Browser
Embedded
app
client
Browser
Backoffice
app
client
Browser
Backoffice
app
client
WAMP R...
Применение
Browser
Browser
Server side infrastructure
WAMP Router
Mobile
Desktop
REGISTERRPC
REGISTERRPC
REGISTERRPC
SUBSC...
ProvidesRPC
Publishevents
Subscribe
to topics
ProvidesRPC
Publishevents
Service
Provider 1
Service
Provider 2
Service
Prov...
Применение
WAMP как основа композитных SOA решений
• Унифицированная сервисная шина
• Асинхронное выполнение процедур
• Ст...
Существующие реализации
• JavaScriptA
• Autobahn|JS (browser, node.js)
• Wampy.js (browser)
• JavaA
• Autobahn|Android (ск...
Итоги
• Простой и открытый протокол
• RPC + PubSub из коробки
• Унифицированная маршрутизация
• Транспорт и сериализация н...
Полезные ссылки
• http://wamp.wsA
• Описание
• Спецификация
• Реализации
• https://groups.google.com/group/wampws
• http:/...
Вот и все!1
Но, возможно, есть вопросы
?
Константин Буркалёв
Спасибо за внимание!
• Mail: kostik@ksdaemon.ru
• Twitter: @KSDaemon
• GitHub: KSDaemon
• Blog: blog.k...
Upcoming SlideShare
Loading in …5
×

1

Share

Download to read offline

Пара слов про WAMP — Константин Буркалев — MoscowJS 13

Download to read offline

Небольшой доклад о протоколе WAMP, его устройстве и архитектуре. А так же о применении в современных веб-приложениях.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Пара слов про WAMP — Константин Буркалев — MoscowJS 13

  1. 1. Пара слов про Константин Буркалёв, @KSDaemonMoscowJS, июль 2014
  2. 2. ≠ WAMP Windows, Apache, MySQL, PHP
  3. 3. Протокол прикладного уровня, 1 реализует 2 паттерна: • Publish/Subscribe (PubSub)1 • Remote Procedure Calls (RPC) = WAMP
  4. 4. Основные компоненты и понятия • Идентификаторы ресурсов • Транспорт • Сериализатор • Сессия • Realm - домен, namespace • Peer, узел • Клиент • Роутер • Роль
  5. 5. Архитектура
  6. 6. Идентификаторы ресурсов • Подписок • Процедур • Ошибок Необходимы для: Представляют собой URI • system.send.file • chat.message • users.admins.message • user.profile.updated
  7. 7. Сериализация и типы данных • integer • string • bool • list (array) • dict Поддерживаемые сериализаторы: • JSON • MsgPack Поддерживаемые типы данных: Обязательные: Дополнительно: любые, зависит от поддержки в сериализаторе
  8. 8. Сообщения и полезная нагрузка • [HELLO,  Realm|uri,  Details|dict]   1 • [PUBLISH,  Request|id,  Options|dict,  Topic|uri]   • [PUBLISH,  Request|id,  Options|dict,  Topic|uri,  Arguments|list]   • [PUBLISH,  Request|id,  Options|dict,  Topic|uri,  Arguments|list,  ArgumentsKw|dict]   1 • [CALL,  Request|id,  Options|dict,  Procedure|uri]   • [CALL,  Request|id,  Options|dict,  Procedure|uri,  Arguments|list]   • [CALL,  Request|id,  Options|dict,  Procedure|uri,  Arguments|list,  ArgumentsKw|dict]   1 • [RESULT,  CALL.Request|id,  Details|dict]   • [RESULT,  CALL.Request|id,  Details|dict,  YIELD.Arguments|list]   • [RESULT,  CALL.Request|id,  Details|dict,  YIELD.Arguments|list,  YIELD.ArgumentsKw|dict] • Массивов | Array | List • Словарей | Hash-table | Dictionary Параметры-данные могут быть в виде:
  9. 9. Транспорт • Websocket • Raw TCP • HTTP long-polling (в разработке) • Unix sockets • В основе лежат сообщения • Сообщения упорядочены • Двунаправленный обмен сообщениями
  10. 10. Транспорт и сессия Клиент Роутер
  11. 11. Транспорт и сессия HELLO Клиент Роутер
  12. 12. Транспорт и сессия HELLO WELCOME Клиент Роутер
  13. 13. Транспорт и сессия HELLO WELCOME ABORT Клиент Роутер
  14. 14. Транспорт и сессия HELLO WELCOME GOODBYE ABORT Клиент Роутер
  15. 15. Транспорт и сессия HELLO WELCOME GOODBYE ABORT GOODBYE Клиент Роутер
  16. 16. Транспорт и сессия HELLO WELCOME GOODBYE ABORT GOODBYE GOODBYE Клиент Роутер
  17. 17. Транспорт и сессия HELLO WELCOME GOODBYE ABORT GOODBYE GOODBYE GOODBYE Клиент Роутер
  18. 18. Publish / Subscribe Publisher Broker Subscriber
  19. 19. Publish / Subscribe SUBSCRIBE Publisher Broker Subscriber
  20. 20. Publish / Subscribe SUBSCRIBE SUBSCRIBED Publisher Broker Subscriber
  21. 21. Publish / Subscribe SUBSCRIBE SUBSCRIBED ERROR Publisher Broker Subscriber
  22. 22. Publish / Subscribe SUBSCRIBE SUBSCRIBED ERROR PUBLISH Publisher Broker Subscriber
  23. 23. Publish / Subscribe SUBSCRIBE SUBSCRIBED ERROR PUBLISH PUBLISHED Publisher Broker Subscriber
  24. 24. Publish / Subscribe SUBSCRIBE SUBSCRIBED ERROR PUBLISH PUBLISHED ERROR Publisher Broker Subscriber
  25. 25. Publish / Subscribe SUBSCRIBE SUBSCRIBED ERROR PUBLISH PUBLISHED ERROR EVENT Publisher Broker Subscriber
  26. 26. Publish / Subscribe SUBSCRIBE SUBSCRIBED UNSUBSCRIBE ERROR PUBLISH PUBLISHED ERROR EVENT Publisher Broker Subscriber
  27. 27. Publish / Subscribe SUBSCRIBE SUBSCRIBED UNSUBSCRIBE UNSUBSCRIBED ERROR PUBLISH PUBLISHED ERROR EVENT Publisher Broker Subscriber
  28. 28. Publish / Subscribe SUBSCRIBE SUBSCRIBED UNSUBSCRIBE UNSUBSCRIBED ERROR ERROR PUBLISH PUBLISHED ERROR EVENT Publisher Broker Subscriber
  29. 29. Remote Procedure Calls Caller Dealer Callee
  30. 30. Remote Procedure Calls REGISTER Caller Dealer Callee
  31. 31. Remote Procedure Calls REGISTER REGISTERED Caller Dealer Callee
  32. 32. Remote Procedure Calls REGISTER REGISTERED ERROR Caller Dealer Callee
  33. 33. Remote Procedure Calls REGISTER REGISTERED ERROR CALL Caller Dealer Callee
  34. 34. Remote Procedure Calls REGISTER REGISTERED ERROR CALL INVOCATION Caller Dealer Callee
  35. 35. Remote Procedure Calls REGISTER REGISTERED ERROR CALL INVOCATION YIELD Caller Dealer Callee
  36. 36. Remote Procedure Calls REGISTER REGISTERED ERROR CALL INVOCATION YIELD ERROR Caller Dealer Callee
  37. 37. Remote Procedure Calls REGISTER REGISTERED ERROR CALL RESULT INVOCATION YIELD ERROR Caller Dealer Callee
  38. 38. Remote Procedure Calls REGISTER REGISTERED ERROR CALL RESULT INVOCATION YIELD ERROR ERROR Caller Dealer Callee
  39. 39. Remote Procedure Calls REGISTER REGISTERED UNREGISTER ERROR CALL RESULT INVOCATION YIELD ERROR ERROR Caller Dealer Callee
  40. 40. Remote Procedure Calls REGISTER REGISTERED UNREGISTER UNREGISTERED ERROR CALL RESULT INVOCATION YIELD ERROR ERROR Caller Dealer Callee
  41. 41. Remote Procedure Calls REGISTER REGISTERED UNREGISTER UNREGISTERED ERROR ERROR CALL RESULT INVOCATION YIELD ERROR ERROR Caller Dealer Callee
  42. 42. Профили • Basic profile • Advanced profile Набор функциональных возможностей в рамках каждого паттерна (PubSub, RPC)
  43. 43. Advanced profile • Управление сессией • Аутентификация • Heartbeat
  44. 44. Advanced profile • Publish / Subscribe • белый и черный списки • идентификация издателя • подписки по паттернам • метасобытия • список подписчиков • список событий
  45. 45. Advanced profile • Remote Procedure Calls • белый и черный списки • идентификация вызывающего • регистрация RPC по паттернам • отмена выполнения • прогрессивное выполнение
  46. 46. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client WAMP Router (realm 2) Применение Онлайн-консультант
  47. 47. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client subscribe to ‘ready.for.chat’ subscribe to ‘ready.for.chat’ WAMP Router (realm 2) Применение Онлайн-консультант
  48. 48. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client WAMP Router (realm 2) Применение Онлайн-консультант subscribe to ‘chat.taken’ subscribe to ‘chat.taken’
  49. 49. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client subscribe to ‘user.chat.id1235’ WAMP Router (realm 2) Применение Онлайн-консультант
  50. 50. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client publish event to ‘ready.for.chat’ WAMP Router (realm 2) Применение Онлайн-консультант
  51. 51. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client receive event in ‘ready.for.chat’ receive event in ‘ready.for.chat’ WAMP Router (realm 2) Применение Онлайн-консультант
  52. 52. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client publish event to ‘chat.taken’ WAMP Router (realm 2) Применение Онлайн-консультант
  53. 53. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client receive eventin ‘chat.taken’ WAMP Router (realm 2) Применение Онлайн-консультант
  54. 54. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client publish event to ‘user.chat.id1235’ WAMP Router (realm 2) Применение Онлайн-консультант
  55. 55. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client receive event in ‘user.chat.id1235’ WAMP Router (realm 2) Применение Онлайн-консультант
  56. 56. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client subscribe to ‘user.chat.id2425’ WAMP Router (realm 2) Применение Онлайн-консультант
  57. 57. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client publish event to ‘ready.for.chat’ WAMP Router (realm 2) Применение Онлайн-консультант
  58. 58. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client receive event in ‘ready.for.chat’ receive event in ‘ready.for.chat’ WAMP Router (realm 2) Применение Онлайн-консультант
  59. 59. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client publish eventto ‘chat.taken’ WAMP Router (realm 2) Применение Онлайн-консультант
  60. 60. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client receive event in ‘chat.taken’ WAMP Router (realm 2) Применение Онлайн-консультант
  61. 61. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client publish event to ‘user.chat.id2425’ WAMP Router (realm 2) Применение Онлайн-консультант
  62. 62. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client receive event in ‘user.chat.id2425’ WAMP Router (realm 2) Применение Онлайн-консультант
  63. 63. Browser Embedded app client Browser Embedded app client Browser Backoffice app client Browser Backoffice app client WAMP Router (realm 1) Browser Embedded app client Browser Embedded app client WAMP Router (realm 2) Применение Онлайн-консультант
  64. 64. Применение Browser Browser Server side infrastructure WAMP Router Mobile Desktop REGISTERRPC REGISTERRPC REGISTERRPC SUBSCRIBE to TOPICs Internal service 1 SUBSCRIBE to TOPICs Internal service 2 Internal service 3 Frontoffice app client Frontoffice app client CRUD Nginx/HAProxy CRUD CRUD Backoffice app client SUBSCRIBE to TOPICs PUBLISHEvent PUBLISHEvent CALL RPCs Nginx/HAProxy Backoffice app client DB CRUD CRUD Backoffice app serverside Frontoffice app serverside Большое интеграционное решение
  65. 65. ProvidesRPC Publishevents Subscribe to topics ProvidesRPC Publishevents Service Provider 1 Service Provider 2 Service Provider 3 Service Provider 4 Service Provider 5 Publish events WAMP Router (realm 1, realm 2, realm 3, ....) CallRPC CallRPC Subscribe to topics Publishevents Consumer 1 Consumer 2 Consumer 3 Consumer 4 Consumer 5 Применение WAMP как основа композитных SOA решений
  66. 66. Применение WAMP как основа композитных SOA решений • Унифицированная сервисная шина • Асинхронное выполнение процедур • Стандартизация интерфейсов взаимодействия • Минимальные накладные расходы • Гибкая инфраструктура • Изолированность и слабая связанность сервисов • Легкость подключения новых сервисов
  67. 67. Существующие реализации • JavaScriptA • Autobahn|JS (browser, node.js) • Wampy.js (browser) • JavaA • Autobahn|Android (скоро) • .NETA • WampSharp (в процессе) • PHPA • Thurway Клиентские библиотеки • PythonA • Autobahn|Python • C++A • Autobahn|Cpp • ErlangA • Erwa • Objective-CA • MDWamp • Lua (в процессе) Роутеры • PythonA • Autobahn|Python • Crossbar.io • ErlangA • Erwa • PHPA • Thurway • LuaA • Wiola
  68. 68. Итоги • Простой и открытый протокол • RPC + PubSub из коробки • Унифицированная маршрутизация • Транспорт и сериализация на любой вкус • Минимальные накладные расходы • Нативное использование в веб-приложениях • Позволяет строить распределенные приложения со слабым связыванием компонентов • Множество реализаций на разных языках • Open source & комьюнити
  69. 69. Полезные ссылки • http://wamp.wsA • Описание • Спецификация • Реализации • https://groups.google.com/group/wampws • http://autobahn.ws • https://github.com/crossbario/crossbar/wiki • Crossbar.io • Примеры клиентов на разных языках
  70. 70. Вот и все!1 Но, возможно, есть вопросы ?
  71. 71. Константин Буркалёв Спасибо за внимание! • Mail: kostik@ksdaemon.ru • Twitter: @KSDaemon • GitHub: KSDaemon • Blog: blog.ksdaemon.ru
  • nordicdyno

    Jul. 24, 2014

Небольшой доклад о протоколе WAMP, его устройстве и архитектуре. А так же о применении в современных веб-приложениях.

Views

Total views

939

On Slideshare

0

From embeds

0

Number of embeds

9

Actions

Downloads

5

Shares

0

Comments

0

Likes

1

×