SIGNALR - ОБМЕН СООБЩЕНИЯМИ В РЕАЛЬНОМ ВРЕМЕНИ

Preview:

DESCRIPTION

Поговорим об относительно новой библиотеке, разработанной Дэвидом Фаулером и Дамьеном Эдвардсом, основной задачей которой является мгновенный обмен сообщениями в Web приложениях, написанных на платформе .Net

Citation preview

мощные возможности реального времени в .Net

SignalR

Керимханов Радислав rkerimhanov@codemastersintl.com

Содержание

Мгновенный обмен сообщениями

Заключение

Основные компоненты SignalR

Простой пример общего чата

Немножко истории

Как SignalR работает?

Приватный чат за 10 мин

8

7

6

5

3

2

1

Основные компоненты SignalR

4 Какие еще есть варианты?

Мгновенный обмен сообщениями

Система мгновенного обмена сообщениями, Система обмена мгновенными сообщениями (англ. Instant messaging, IM) — службы мгновенных сообщений (Instant Messaging Service, IMS) и программы-клиенты (Instant Messenger, IM) для обмена сообщениями в реальном времени черезИнтернет.

Немножко истории

Demian EdwardsDavid Fowler

David Fowler joined Microsoft as a developer on the ASP.NET team in 2008. Before that he did two internships at Microsoft as a tester and a developer. He's originally from Barbados and went to college in Florida.

Originally from Australia, Damian Edwards is a senior program manager on the ASP.NET team where he looks after the ASP.NET core and web forms. Before joining Microsoft, Damian was an ASP.NET MVP. He's a huge fan of Javascript and jQuery.

• JabbR - Real time chat application [SignalR + PNotify = Real Time Push Notifications] POC (Link)• Umbraco Now - realtime activity map of community activity• LoggR - Real time web app monitoring• WorkFu - Opportunities that find you (how WorkFu was built)• HushFlow - Private discussion board for teams• HurricaneJs - HTML5/SignalR/.NET game server and engine.• Lege.no - Chat with doctor online (Norwegian)• Compilify.net - Compile and execute .NET from your web browser.• ElmahR - ElmahR = ELMAH + SignalR, real time error notification dashboard.• NodeAssets - Asset management solution that uses SignalR to push css updates as you are changing it• DIWICON AURA - Indoor positioning system with panic messages.• Adopt Him - Romantic social network built around SignalR. Real time user interactions and chat. Finding love has never

been so instant.• Fixposit - Allows groups of users to share their location with eachother in real time on a google map.• Postworthy - Real time content curation tool. (source code)• LiveTiming/TimeService - Real time racetrack monitor for some BeNeLux racetracks, including TT Assen SuperBike track• bromelard - Offers a unique platform for global online sharing of geographical listings• ShootR - Multiplayer space shooter game (work in progress).• InspectB.in - Test remote http clients and webhooks. Point to your InspectBin url and start inspecting.• SRChat - A chat application using SignalR ## SignalR Clients• SignalR-ObjC - An iOS/Mac SignalR Client

Основные компоненты SignalR

This is an example text. Go ahead and replace it with your own text.

Templates

This is an example text. Go ahead and replace it with your own text.

Templates

3This is an example text. Go ahead and replace it with your own text.

Templates

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

2

1

Какие еще есть варианты?

Плюсы по сравнению с Polling:— Минимальное количество запросов— Высокая временная точность событий— Сервер хранит события только на время реконнектаМинусы по сравнению с Polling:— Более сложная схема

Long PollingPolling

Плюсы по сравнению с Long Polling:— Поднимается одно соединение— Предельно высокая временная точность событий— Управление сетевыми сбоями контролирует браузерМинусы по сравнению с Long Polling:— HTTP не совместимый протокол, нужен свой сервер, усложняется отладка

Web Sockets

Плюсы:— Просто— Данные могут быть пожатыМинусы:— Очень много лишних запросов— События всегда приходят с опозданием— Серверу приходится хранить события пока клиент не заберет их или пока они не устареют

321

Как SignalR работает

Your own footer Your Logo

This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

Your own sub headlineTemplates

This is placeholder text.

This is placeholder text.

This is placeholder text.

Your own footer Your Logo

Your own sub headlineTemplates

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

• Template TextText for templates

-Example text Text

• Template TextText for templates

-Example text text

Your own sub headlineTemplates

Your own footer Your Logo

This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

Templates

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

Templates

This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

Templates

1

2

3

Your own footer Your Logo

Your own footer Your Logo

Your own sub headlineTemplates

This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

This is placeholder text.

This is placeholder text.

This is placeholder text.

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text

Your own footer Your Logo

Your own sub headlineTemplates

1

2

3

4

5

6

7

Your own footer Your Logo

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

Your own footer Your Logo

Your own sub headlineTemplates

This is placeholder text.

This is placeholder text.

This is placeholder text.

This is placeholder text.

This is placeholder text.

This is placeholder text.

Your own sub headlineTemplates

Your own footer Your Logo

This is an example text. Go ahead and replace it

This is an example text. Go ahead and replace it

This is an example text. Go ahead and replace it

This is an example text. Go ahead and replace it

This is an example text. Go ahead and replace it

This is an example text. Go ahead and replace it

This is an example text. Go ahead and replace it✓

1

2

3

4

5

6

7

1. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

2. This is an example text. Go ahead and replace it with your own text.

3. This is an example text. Go ahead and replace it with your own text.

Your own footer Your Logo

Editable diagram – Venn diagram

Example

ExampleExample

Your own footer Your Logo

TemplatesLine chart

2010

200920082007

20062005

3

5

1 24

6

This is an example text. Go ahead and replace it with your own text.

Th

is is

an

exa

mp

le t

ext

Text

TemplatesProgress chart – Upward arrow

Your own footer Your Logo

Example

Example

Example

Templates

This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text. This is an example text. Go ahead and replace it with your own text.

Your own footer Your Logo

Templates Pie diagram

text

Logo

text

text

Your own footer Your Logo

Arrow ProcessYour own subheadline

Text Text Text

THANK YOU!

Recommended