SlideShare a Scribd company logo
1 of 23
SignalR
мощные возможности реального времени в .Net
Керимханов Радислав
rkerimhanov@codemastersintl.com
Содержание

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


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


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

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


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


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


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


8   Заключение
Мгновенный обмен сообщениями


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

David Fowler                            Demian Edwards


                                                         Originally from
               David Fowler joined                       Australia, Damian
               Microsoft as a                            Edwards is a senior
               developer on the                          program manager on
               ASP.NET team in
                                                         the ASP.NET team
               2008. Before that he
                                                         where he looks after
               did two internships at
                                                         the ASP.NET core and
               Microsoft as a tester                     web forms. Before
               and a developer. He's                     joining
               originally from                           Microsoft, Damian
               Barbados and went to                      was an ASP.NET
               college in Florida.
                                                         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


Templates

      This is an example text. Go ahead
 1    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
Templates                                  your own text.
                                           This is an example text. Go ahead and
      This is an example text. Go ahead    replace it with your own text.
  2   and replace it with your own text.



Templates


      This is an example text. Go ahead
  3   and replace it with your own text.
Какие еще есть варианты?

Polling                          Long Polling                  Web Sockets

 1                                2                             3

 Плюсы:                           Плюсы по сравнению с          Плюсы по сравнению с Long
 — Просто                         Polling:                      Polling:
 — Данные могут быть пожаты       — Минимальное количество      — Поднимается одно
 Минусы:                          запросов                      соединение
 — Очень много лишних             — Высокая временная           — Предельно высокая
 запросов                         точность событий              временная точность событий
 — События всегда приходят с      — Сервер хранит события       — Управление сетевыми
 опозданием                       только на время реконнекта    сбоями контролирует браузер
 — Серверу приходится             Минусы по сравнению с         Минусы по сравнению с
 хранить события пока клиент      Polling:                      Long Polling:
 не заберет их или пока они не    — Более сложная схема         — HTTP не совместимый
 устареют                                                       протокол, нужен свой
                                                                сервер, усложняется отладка
Как SignalR работает
Templates
                                Your own sub headline



                          This is an example text. Go ahead and replace it
           This is        with your own text. tThis is an example text. Go
      placeholder text.   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
           This is        with your own text. This is an example text. Go
      placeholder text.   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
           This is
                          ahead and replace it with your own text. This is
      placeholder text.   an example text. Go ahead and replace it with
                          your own text.



Your own footer                                                              Your Logo
Templates
Your own sub headline

     •Template Text
        Text for templates
            -Example text
            Text

     •Template Text
        Text for templates
            -Example text
            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
Templates
Your own sub headline


 Templates

         This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead
    1
         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
    2    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
    3    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 footer   Your Logo
Templates
                                 Your own sub headline



                  This is
             placeholder text.




                  This is
             placeholder text.




                                    This is an example text. Go ahead and replace it with
                  This is           your own text. tThis is an example text. Go ahead
             placeholder text.      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
    Your own sub headline

         This is an example text. Go ahead and replace it with your own text. This is an example text.
1        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.
2        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.
3
         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.
4
         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.
5
         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.
6
         Go ahead and replace it with your own text


7        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
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
                   Your own sub headline



                       This is             This is
                  placeholder text.   placeholder text.




                       This is             This is
                  placeholder text.   placeholder text.




                       This is             This is
                  placeholder text.   placeholder text.




Your own footer                                           Your Logo
Templates
    Your own sub headline




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


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


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


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


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


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


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




    Your own footer                                           Your Logo
Editable diagram – Venn diagram



                                     1.   This is an example text. Go ahead
                                          and replace it with your own text.
                      Example             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.

         Example           Example




    Your own footer                                                Your Logo
Templates
Line chart




                                This is an
      This is an example text




                                example
                                text. Go                             6
                                ahead and
                                replace it
                                with your
                                own text.

                                                                5

                                                         4
                                     1       2      3


                                    200      200   200   200   200   201
                                     5        6     7     8     9     0
     Your own footer                                                       Your Logo
Templates
Progress chart – Upward arrow




                                         Example
                               Example

                     Example

   Your own footer                                 Your Logo
Templates
Pie diagram

                             Templates
                      text
                               This is an example text. Go
                               ahead and replace it with
                      text     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
                      Logo     your own text.




                      text




    Your own footer                           Your Logo
Arrow Process
Your own subheadline




                      Text   Text   Text




    Your own footer                        Your Logo
THANK YOU!

More Related Content

Viewers also liked

Введение в Knockout
Введение в Knockout Введение в Knockout
Введение в Knockout Pavel Tsukanov
 
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.Pavel Tsukanov
 
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++Pavel Tsukanov
 
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВРАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВPavel Tsukanov
 
Domain-Driven Design: Модель вместо требований
Domain-Driven Design: Модель вместо требованийDomain-Driven Design: Модель вместо требований
Domain-Driven Design: Модель вместо требованийCUSTIS
 
TDD (Test-driven Development) как стиль разработки.
TDD (Test-driven Development) как стиль разработки.TDD (Test-driven Development) как стиль разработки.
TDD (Test-driven Development) как стиль разработки.Pavel Tsukanov
 
Автоматизированное тестирование UI на C# + Selenium WebDriver
Автоматизированное тестирование UI на C# + Selenium WebDriverАвтоматизированное тестирование UI на C# + Selenium WebDriver
Автоматизированное тестирование UI на C# + Selenium WebDriverPavel Tsukanov
 
Реализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCFРеализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCFPavel Tsukanov
 
Ruby - или зачем мне еще один язык программирования?
Ruby - или зачем мне еще один язык программирования?Ruby - или зачем мне еще один язык программирования?
Ruby - или зачем мне еще один язык программирования?Pavel Tsukanov
 
СОЗДАЙ РОБОТА С НУЛЯ
СОЗДАЙ РОБОТА С НУЛЯСОЗДАЙ РОБОТА С НУЛЯ
СОЗДАЙ РОБОТА С НУЛЯPavel Tsukanov
 
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITYCONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITYPavel Tsukanov
 
Как писать красивый код или основы SOLID
Как писать красивый код или основы SOLIDКак писать красивый код или основы SOLID
Как писать красивый код или основы SOLIDPavel Tsukanov
 
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCVМАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCVPavel Tsukanov
 

Viewers also liked (18)

Введение в Knockout
Введение в Knockout Введение в Knockout
Введение в Knockout
 
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
 
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
 
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВРАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
 
Unit tests
Unit testsUnit tests
Unit tests
 
Domain-Driven Design: Модель вместо требований
Domain-Driven Design: Модель вместо требованийDomain-Driven Design: Модель вместо требований
Domain-Driven Design: Модель вместо требований
 
TDD (Test-driven Development) как стиль разработки.
TDD (Test-driven Development) как стиль разработки.TDD (Test-driven Development) как стиль разработки.
TDD (Test-driven Development) как стиль разработки.
 
PaaS и SaaS
PaaS и SaaSPaaS и SaaS
PaaS и SaaS
 
Автоматизированное тестирование UI на C# + Selenium WebDriver
Автоматизированное тестирование UI на C# + Selenium WebDriverАвтоматизированное тестирование UI на C# + Selenium WebDriver
Автоматизированное тестирование UI на C# + Selenium WebDriver
 
Реализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCFРеализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCF
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Лекция Android
Лекция AndroidЛекция Android
Лекция Android
 
Ruby - или зачем мне еще один язык программирования?
Ruby - или зачем мне еще один язык программирования?Ruby - или зачем мне еще один язык программирования?
Ruby - или зачем мне еще один язык программирования?
 
DDD Workshop
DDD WorkshopDDD Workshop
DDD Workshop
 
СОЗДАЙ РОБОТА С НУЛЯ
СОЗДАЙ РОБОТА С НУЛЯСОЗДАЙ РОБОТА С НУЛЯ
СОЗДАЙ РОБОТА С НУЛЯ
 
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITYCONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
 
Как писать красивый код или основы SOLID
Как писать красивый код или основы SOLIDКак писать красивый код или основы SOLID
Как писать красивый код или основы SOLID
 
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCVМАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
 

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

Similar to SIGNALR - ОБМЕН СООБЩЕНИЯМИ В РЕАЛЬНОМ ВРЕМЕНИ (20)

Crown Capital Eco Management indonesia fraud-How to Close Deals Faster and Sm...
Crown Capital Eco Management indonesia fraud-How to Close Deals Faster and Sm...Crown Capital Eco Management indonesia fraud-How to Close Deals Faster and Sm...
Crown Capital Eco Management indonesia fraud-How to Close Deals Faster and Sm...
 
Powerpoint1
Powerpoint1Powerpoint1
Powerpoint1
 
Business
BusinessBusiness
Business
 
Presentation4
Presentation4Presentation4
Presentation4
 
Teamworkpresentation
TeamworkpresentationTeamworkpresentation
Teamworkpresentation
 
Ts101875474
Ts101875474Ts101875474
Ts101875474
 
Boy with paper dart
Boy with paper dartBoy with paper dart
Boy with paper dart
 
Software Development Diagram for PowerPoint
Software Development Diagram for PowerPointSoftware Development Diagram for PowerPoint
Software Development Diagram for PowerPoint
 
Computerscreen
ComputerscreenComputerscreen
Computerscreen
 
SeniorERP
SeniorERPSeniorERP
SeniorERP
 
template
 template template
template
 
Business man winner
Business man winnerBusiness man winner
Business man winner
 
Field and blue sky
Field and blue skyField and blue sky
Field and blue sky
 
Active lifestyle
Active lifestyleActive lifestyle
Active lifestyle
 
Done deal
Done dealDone deal
Done deal
 
Transport freight ship
Transport freight shipTransport freight ship
Transport freight ship
 
Punch
PunchPunch
Punch
 
Presentation
PresentationPresentation
Presentation
 
Fresh lifestyle
Fresh lifestyleFresh lifestyle
Fresh lifestyle
 
Gears
GearsGears
Gears
 

More from Pavel Tsukanov

ВВЕДЕНИЕ В NODE.JS
ВВЕДЕНИЕ В NODE.JS ВВЕДЕНИЕ В NODE.JS
ВВЕДЕНИЕ В NODE.JS Pavel Tsukanov
 
АНИМАЦИЯ В FLASH И HTML5
АНИМАЦИЯ В FLASH И HTML5АНИМАЦИЯ В FLASH И HTML5
АНИМАЦИЯ В FLASH И HTML5Pavel Tsukanov
 
ХАКЕРЫ И АНТИХАКЕРЫ
ХАКЕРЫ И АНТИХАКЕРЫХАКЕРЫ И АНТИХАКЕРЫ
ХАКЕРЫ И АНТИХАКЕРЫPavel Tsukanov
 
ЗАРАБОТОК В ИНТЕРНЕТЕ.
ЗАРАБОТОК В ИНТЕРНЕТЕ.ЗАРАБОТОК В ИНТЕРНЕТЕ.
ЗАРАБОТОК В ИНТЕРНЕТЕ.Pavel Tsukanov
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)Pavel Tsukanov
 
Статический анализ кода
Статический анализ кода Статический анализ кода
Статический анализ кода Pavel Tsukanov
 
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже. Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже. Pavel Tsukanov
 

More from Pavel Tsukanov (7)

ВВЕДЕНИЕ В NODE.JS
ВВЕДЕНИЕ В NODE.JS ВВЕДЕНИЕ В NODE.JS
ВВЕДЕНИЕ В NODE.JS
 
АНИМАЦИЯ В FLASH И HTML5
АНИМАЦИЯ В FLASH И HTML5АНИМАЦИЯ В FLASH И HTML5
АНИМАЦИЯ В FLASH И HTML5
 
ХАКЕРЫ И АНТИХАКЕРЫ
ХАКЕРЫ И АНТИХАКЕРЫХАКЕРЫ И АНТИХАКЕРЫ
ХАКЕРЫ И АНТИХАКЕРЫ
 
ЗАРАБОТОК В ИНТЕРНЕТЕ.
ЗАРАБОТОК В ИНТЕРНЕТЕ.ЗАРАБОТОК В ИНТЕРНЕТЕ.
ЗАРАБОТОК В ИНТЕРНЕТЕ.
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
 
Статический анализ кода
Статический анализ кода Статический анализ кода
Статический анализ кода
 
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже. Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
 

Recently uploaded

Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Recently uploaded (20)

Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

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

  • 1. SignalR мощные возможности реального времени в .Net Керимханов Радислав rkerimhanov@codemastersintl.com
  • 2. Содержание 1 Мгновенный обмен сообщениями 2 Немножко истории 3 Основные компоненты SignalR Основные компоненты SignalR 4 Какие еще есть варианты? 5 Как SignalR работает? 6 Простой пример общего чата 7 Приватный чат за 10 мин 8 Заключение
  • 3. Мгновенный обмен сообщениями Система мгновенного обмена сообщениями, Система обмена мгновенными сообщениями (англ. Instant messaging, IM) — службы мгновенных сообщений (Instant Messaging Service, IMS) и программы-клиенты (Instant Messenger, IM) для обмена сообщениями в реальном времени черезИнтернет.
  • 4. Немножко истории David Fowler Demian Edwards Originally from David Fowler joined Australia, Damian Microsoft as a Edwards is a senior developer on the program manager on ASP.NET team in the ASP.NET team 2008. Before that he where he looks after did two internships at the ASP.NET core and Microsoft as a tester web forms. Before and a developer. He's joining originally from Microsoft, Damian Barbados and went to was an ASP.NET college in Florida. MVP. He's a huge fan of Javascript and jQuery.
  • 5. 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
  • 6. Основные компоненты SignalR Templates This is an example text. Go ahead 1 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 Templates your own text. This is an example text. Go ahead and This is an example text. Go ahead replace it with your own text. 2 and replace it with your own text. Templates This is an example text. Go ahead 3 and replace it with your own text.
  • 7. Какие еще есть варианты? Polling Long Polling Web Sockets 1 2 3 Плюсы: Плюсы по сравнению с Плюсы по сравнению с Long — Просто Polling: Polling: — Данные могут быть пожаты — Минимальное количество — Поднимается одно Минусы: запросов соединение — Очень много лишних — Высокая временная — Предельно высокая запросов точность событий временная точность событий — События всегда приходят с — Сервер хранит события — Управление сетевыми опозданием только на время реконнекта сбоями контролирует браузер — Серверу приходится Минусы по сравнению с Минусы по сравнению с хранить события пока клиент Polling: Long Polling: не заберет их или пока они не — Более сложная схема — HTTP не совместимый устареют протокол, нужен свой сервер, усложняется отладка
  • 9. Templates Your own sub headline This is an example text. Go ahead and replace it This is with your own text. tThis is an example text. Go placeholder text. 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 This is with your own text. This is an example text. Go placeholder text. 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 This is ahead and replace it with your own text. This is placeholder text. an example text. Go ahead and replace it with your own text. Your own footer Your Logo
  • 10. Templates Your own sub headline •Template Text Text for templates -Example text Text •Template Text Text for templates -Example text 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
  • 11. Templates Your own sub headline Templates This is an example text. Go ahead and replace it with your own text. tThis is an example text. Go ahead 1 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 2 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 3 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
  • 12. Your own footer Your Logo
  • 13. Templates Your own sub headline This is placeholder text. This is placeholder text. This is an example text. Go ahead and replace it with This is your own text. tThis is an example text. Go ahead placeholder text. 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
  • 14. Templates Your own sub headline This is an example text. Go ahead and replace it with your own text. This is an example text. 1 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. 2 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. 3 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. 4 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. 5 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. 6 Go ahead and replace it with your own text 7 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
  • 15. 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
  • 16. Templates Your own sub headline This is This is placeholder text. placeholder text. This is This is placeholder text. placeholder text. This is This is placeholder text. placeholder text. Your own footer Your Logo
  • 17. Templates Your own sub headline ✓ 1 This is an example text. Go ahead and replace it ✓ 2 This is an example text. Go ahead and replace it ✓ 3 This is an example text. Go ahead and replace it ✓ 4 This is an example text. Go ahead and replace it ✓ 5 This is an example text. Go ahead and replace it ✓ 6 This is an example text. Go ahead and replace it ✓ 7 This is an example text. Go ahead and replace it Your own footer Your Logo
  • 18. Editable diagram – Venn diagram 1. This is an example text. Go ahead and replace it with your own text. Example 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. Example Example Your own footer Your Logo
  • 19. Templates Line chart This is an This is an example text example text. Go 6 ahead and replace it with your own text. 5 4 1 2 3 200 200 200 200 200 201 5 6 7 8 9 0 Your own footer Your Logo
  • 20. Templates Progress chart – Upward arrow Example Example Example Your own footer Your Logo
  • 21. Templates Pie diagram Templates text This is an example text. Go ahead and replace it with text 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 Logo your own text. text Your own footer Your Logo
  • 22. Arrow Process Your own subheadline Text Text Text Your own footer Your Logo