SlideShare a Scribd company logo
Web e device in real time
con ASP.NET SignalR
Giuseppe Marchi
Microsoft MVP SharePoint
Luca Zulian
MCTS ASP.NET 4
What is SignalR?
Under the Hood
Building Apps with SignalR
SignalR outside .NET Framework
_1
_3
_5
_18
Performance & testing _21
What is SignalR for Developers?
• A library for ASP.NET developers that simplifies the
process of adding real-time functionality
• An Open Source library (github.com/SignalR/SignalR)
• Well Documented library (asp.net/signalr)
• Always up to date
What SignalR offers to Developers
• Real-time, persistent connection abstraction over
HTTP for .NET (supports Web Sockets, and falls back to
other compatible techniques for older browsers)
• Simplicity
• Reach
• Performance
• Scalability
• Security
• Extensibility
SignalR: under the hood
Before Start: Components
• Meta Package (Microsoft.AspNet.SignalR)
• Core (Microsoft.AspNet.SignalR.Core)
• Hosts (Microsoft.AspNet.SignalR.SystemWeb,
Microsoft.AspNet.SignalR.Owin)
• Clients (Microsoft.AspNet.SignalR.Js,
Microsoft.AspNet.SignalR.Client)
• Scaleout Buses (Microsoft.AspNet.SignalR.Redis,
Microsoft.AspNet.SignalR.ServiceBus)
DEMO
Simplicity: two level API
Choose the level of abstraction that works for you
Two level API: Configuration
Remember: call RouteTable.Routes.MapHubs() as the first line of code in
the Application_Start method, this must be called before you register any
other routes.
Two level API: Hub Configuration
Remember: call RouteTable.Routes.MapConnection() as the first line of
code in the Application_Start method, this must be called before you
register any other routes.
Two level API: PersistentConnection
• Low-level
• Simple endpoint for sending
single-recipient, grouped, or
broadcast messages
• Gives direct access to the low-
level communication protocols
• PersistentConnection class
• Connect, reconnect &
disconnect semantics
Two level API: PersistentConnection
PersistentConnection API
Two level API: PersistentConnection
DEMO
Two level API: Hub
• More high-level pipeline
• Allows your client and server to
call methods each other directly
(internal routing)
• Allows you to pass strongly
typed parameters to methods,
enabling model binding
• Hub class
• Automatic client proxy
generation (Javascript)
Two level API: Hub
Hub API
Two level API: Hub
DEMO
Simplicity: Javascript client
• Javascript proxy (AUTOMATICALLY created on ~/signalr/hubs)
Simplicity: Windows8 & WP8 client
• Microsoft.AspNet.SignalR.Client
• Hub
• PersistentConnection
Transport Negotiation
SignalR isolates us from low-level details, giving us the
impression of working on a permanently open
persistent connection
But isn’t real-time web just chat?
• Dashboards & monitoring
• Collaborative anything
• Job progress
• Real-time forms
• Gaming
• …
SignalR outside .NET framework
• SignalR-ObjC - Native for iOS clients
• SignalA - Native for Android clients
• Xamarin (in xamarin branch
https://github.com/SignalR/SignalR/tree/xamarin, but
need some tricks)
SignalR on IIS?
Supported server operating systems
• Windows Server 2012
• Windows Server 2008 r2.
• Windows 8
• Windows 7
• Windows Azure
Supported .NET Framework versions
• SignalR is supported on both .NET Framework version 4 and 4.5. For WebSockets to
be supported, .NET Framework 4.5 must be used.
Supported IIS versions
• IIS 8 or IIS 8 Express
• IIS 7 and 7.5. Support for extensionless URLs is required
• IIS must be running in integrated mode; classic mode is not supported
• The hosting application must be running in full trust mode
SignalR only on IIS?
• Console Applications, Windows Services
(Microsoft.AspNet.SignalR.SelfHost)
• OWIN
(Microsoft.AspNet.SignalR.Owin)
• Mono
SignalR performance & testing
• SignalR Crank or Stress projects
from repository
• Performance Monitor
(Perfmon.exe)
SignalR performance & testing
• Connections Connected
• Connections Reconnected
• Connections Disonnected
• Connections Current
• Connection Messages
Received Total
• Connection Messages
Sent Total
• Connection Messages
Received/Sec
• Connection Messages
Sent/Sec
SignalR Performance Counter
SignalR performance considerations
Reducing message size
• JsonIgnore attribute
• JsonProperty attribute to reduce message size
Modify SignalR configuration settings
• DefaultMessageBufferSize
Modify ASP.NET configuration settings
• Maximum concurrent requests per CPU
• Request Queue Limit
Modify IIS configuration settings
• Max concurrent requests per application
Q&A
Contatti
OverNet Education
• TEL. +39 02 365738
• EMAIL info@wpc2013.it
• WEB www.WPC2013.it
• TWITTER @Overnete
Thank You

More Related Content

What's hot (20)

Icinga Camp Bangalore - Icinga2 and Ansible
Icinga Camp Bangalore - Icinga2 and AnsibleIcinga Camp Bangalore - Icinga2 and Ansible
Icinga Camp Bangalore - Icinga2 and Ansible
Icinga
 
Simplify Microservices with the NGINX Application Platform - EMEA
Simplify Microservices with the NGINX Application Platform - EMEASimplify Microservices with the NGINX Application Platform - EMEA
Simplify Microservices with the NGINX Application Platform - EMEA
NGINX, Inc.
 
.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс...
.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс....NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс...
.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс...
NETFest
 
NGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controller
NGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controllerNGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controller
NGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controller
Katherine Bagood
 
API Gateway Use Cases​ for Kubernetes​
API Gateway Use Cases​ for Kubernetes​API Gateway Use Cases​ for Kubernetes​
API Gateway Use Cases​ for Kubernetes​
NGINX, Inc.
 
NGINX Controller: Configuration, Management, and Troubleshooting at Scale
NGINX Controller: Configuration, Management, and Troubleshooting at Scale NGINX Controller: Configuration, Management, and Troubleshooting at Scale
NGINX Controller: Configuration, Management, and Troubleshooting at Scale
NGINX, Inc.
 
Riyadh Meetup4- Sonarqube for Mule 4 Code review
Riyadh Meetup4- Sonarqube for Mule 4 Code reviewRiyadh Meetup4- Sonarqube for Mule 4 Code review
Riyadh Meetup4- Sonarqube for Mule 4 Code review
satyasekhar123
 
DEVNET-1117 Open Source DevCenter Launched within DevNet
DEVNET-1117	Open Source DevCenter Launched within DevNetDEVNET-1117	Open Source DevCenter Launched within DevNet
DEVNET-1117 Open Source DevCenter Launched within DevNet
Cisco DevNet
 
Microservice API Gateways with NGINX
Microservice API Gateways with NGINXMicroservice API Gateways with NGINX
Microservice API Gateways with NGINX
Geoffrey Filippi
 
DevSecCon Singapore 2019: Preventative Security for Kubernetes
DevSecCon Singapore 2019: Preventative Security for KubernetesDevSecCon Singapore 2019: Preventative Security for Kubernetes
DevSecCon Singapore 2019: Preventative Security for Kubernetes
DevSecCon
 
Dangerous Demo: Apidaze
Dangerous Demo: ApidazeDangerous Demo: Apidaze
Dangerous Demo: Apidaze
Alan Quayle
 
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga
 
MRA AMA Part 6: Service Mesh Models
MRA AMA Part 6: Service Mesh ModelsMRA AMA Part 6: Service Mesh Models
MRA AMA Part 6: Service Mesh Models
NGINX, Inc.
 
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magicRunning Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Marco Parenzan
 
Linux routing and firewall for beginners
Linux   routing and firewall for beginnersLinux   routing and firewall for beginners
Linux routing and firewall for beginners
n|u - The Open Security Community
 
DEVNET-1112 The DevNet Hackathon Awards
DEVNET-1112	The DevNet Hackathon AwardsDEVNET-1112	The DevNet Hackathon Awards
DEVNET-1112 The DevNet Hackathon Awards
Cisco DevNet
 
Comparison of Current Service Mesh Architectures
Comparison of Current Service Mesh ArchitecturesComparison of Current Service Mesh Architectures
Comparison of Current Service Mesh Architectures
Mirantis
 
What's New with NGINX Application Security Solutions
What's New with NGINX Application Security SolutionsWhat's New with NGINX Application Security Solutions
What's New with NGINX Application Security Solutions
NGINX, Inc.
 
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write ModulesIcinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga
 
Your Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes
Your Application Deserves Better than Kubernetes Ingress: Istio vs. KubernetesYour Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes
Your Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes
Mirantis
 
Icinga Camp Bangalore - Icinga2 and Ansible
Icinga Camp Bangalore - Icinga2 and AnsibleIcinga Camp Bangalore - Icinga2 and Ansible
Icinga Camp Bangalore - Icinga2 and Ansible
Icinga
 
Simplify Microservices with the NGINX Application Platform - EMEA
Simplify Microservices with the NGINX Application Platform - EMEASimplify Microservices with the NGINX Application Platform - EMEA
Simplify Microservices with the NGINX Application Platform - EMEA
NGINX, Inc.
 
.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс...
.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс....NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс...
.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находяс...
NETFest
 
NGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controller
NGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controllerNGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controller
NGINX Lunch and Learn Event: Kubernetes and the NGINX Plus Ingress controller
Katherine Bagood
 
API Gateway Use Cases​ for Kubernetes​
API Gateway Use Cases​ for Kubernetes​API Gateway Use Cases​ for Kubernetes​
API Gateway Use Cases​ for Kubernetes​
NGINX, Inc.
 
NGINX Controller: Configuration, Management, and Troubleshooting at Scale
NGINX Controller: Configuration, Management, and Troubleshooting at Scale NGINX Controller: Configuration, Management, and Troubleshooting at Scale
NGINX Controller: Configuration, Management, and Troubleshooting at Scale
NGINX, Inc.
 
Riyadh Meetup4- Sonarqube for Mule 4 Code review
Riyadh Meetup4- Sonarqube for Mule 4 Code reviewRiyadh Meetup4- Sonarqube for Mule 4 Code review
Riyadh Meetup4- Sonarqube for Mule 4 Code review
satyasekhar123
 
DEVNET-1117 Open Source DevCenter Launched within DevNet
DEVNET-1117	Open Source DevCenter Launched within DevNetDEVNET-1117	Open Source DevCenter Launched within DevNet
DEVNET-1117 Open Source DevCenter Launched within DevNet
Cisco DevNet
 
Microservice API Gateways with NGINX
Microservice API Gateways with NGINXMicroservice API Gateways with NGINX
Microservice API Gateways with NGINX
Geoffrey Filippi
 
DevSecCon Singapore 2019: Preventative Security for Kubernetes
DevSecCon Singapore 2019: Preventative Security for KubernetesDevSecCon Singapore 2019: Preventative Security for Kubernetes
DevSecCon Singapore 2019: Preventative Security for Kubernetes
DevSecCon
 
Dangerous Demo: Apidaze
Dangerous Demo: ApidazeDangerous Demo: Apidaze
Dangerous Demo: Apidaze
Alan Quayle
 
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga
 
MRA AMA Part 6: Service Mesh Models
MRA AMA Part 6: Service Mesh ModelsMRA AMA Part 6: Service Mesh Models
MRA AMA Part 6: Service Mesh Models
NGINX, Inc.
 
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magicRunning Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Marco Parenzan
 
DEVNET-1112 The DevNet Hackathon Awards
DEVNET-1112	The DevNet Hackathon AwardsDEVNET-1112	The DevNet Hackathon Awards
DEVNET-1112 The DevNet Hackathon Awards
Cisco DevNet
 
Comparison of Current Service Mesh Architectures
Comparison of Current Service Mesh ArchitecturesComparison of Current Service Mesh Architectures
Comparison of Current Service Mesh Architectures
Mirantis
 
What's New with NGINX Application Security Solutions
What's New with NGINX Application Security SolutionsWhat's New with NGINX Application Security Solutions
What's New with NGINX Application Security Solutions
NGINX, Inc.
 
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write ModulesIcinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga
 
Your Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes
Your Application Deserves Better than Kubernetes Ingress: Istio vs. KubernetesYour Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes
Your Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes
Mirantis
 

Viewers also liked (20)

Distribution the particular Wings- The software Safety measures Concurrence r...
Distribution the particular Wings- The software Safety measures Concurrence r...Distribution the particular Wings- The software Safety measures Concurrence r...
Distribution the particular Wings- The software Safety measures Concurrence r...
may610eila
 
Projek Agropreneur
Projek AgropreneurProjek Agropreneur
Projek Agropreneur
agropnet
 
Images taken and editing
Images taken and editingImages taken and editing
Images taken and editing
JakeMason94
 
Evaluation
EvaluationEvaluation
Evaluation
JakeMason94
 
Golf slide show
Golf slide showGolf slide show
Golf slide show
Bretski5
 
Strategies for Dealing with the CRF
Strategies for Dealing with the CRFStrategies for Dealing with the CRF
Strategies for Dealing with the CRF
Mary K.D. D'Rozario
 
Specfic research and analysis
Specfic research and analysisSpecfic research and analysis
Specfic research and analysis
JakeMason94
 
2 nation pledge for the elderly
2 nation pledge for the elderly2 nation pledge for the elderly
2 nation pledge for the elderly
meridianstdnt
 
Office furniture Office Design
Office furniture Office DesignOffice furniture Office Design
Office furniture Office Design
wallaceperkins
 
The Hero Plan · Gamification World Congress 2013
The Hero Plan · Gamification World Congress 2013The Hero Plan · Gamification World Congress 2013
The Hero Plan · Gamification World Congress 2013
Daniel Vecino Castel
 
Model Belajar "Probelm Base Learning"
Model Belajar "Probelm Base Learning"Model Belajar "Probelm Base Learning"
Model Belajar "Probelm Base Learning"
Harrys Samosir
 
Rencana pelaksanaan pembelajaran smt 2
Rencana pelaksanaan pembelajaran smt 2 Rencana pelaksanaan pembelajaran smt 2
Rencana pelaksanaan pembelajaran smt 2
Ahmad Sodiq
 
Оконная пленка Korqu 3 (Тепловые дыры))
Оконная пленка Korqu 3 (Тепловые дыры))Оконная пленка Korqu 3 (Тепловые дыры))
Оконная пленка Korqu 3 (Тепловые дыры))
Сергей Назаров
 
20130309santo lee
20130309santo lee20130309santo lee
20130309santo lee
Shigeo Lee
 
121 el2f
121 el2f121 el2f
121 el2f
Juse Oktabri
 
Research & analyses
Research & analysesResearch & analyses
Research & analyses
JakeMason94
 
Emprender · Anda que no mola ni nada
Emprender · Anda que no mola ni nadaEmprender · Anda que no mola ni nada
Emprender · Anda que no mola ni nada
Daniel Vecino Castel
 
Listing Presentation
Listing PresentationListing Presentation
Listing Presentation
Amand V. Stepp
 
Pauta 2
Pauta 2Pauta 2
Pauta 2
María José Martínez García
 
Distribution the particular Wings- The software Safety measures Concurrence r...
Distribution the particular Wings- The software Safety measures Concurrence r...Distribution the particular Wings- The software Safety measures Concurrence r...
Distribution the particular Wings- The software Safety measures Concurrence r...
may610eila
 
Projek Agropreneur
Projek AgropreneurProjek Agropreneur
Projek Agropreneur
agropnet
 
Images taken and editing
Images taken and editingImages taken and editing
Images taken and editing
JakeMason94
 
Golf slide show
Golf slide showGolf slide show
Golf slide show
Bretski5
 
Strategies for Dealing with the CRF
Strategies for Dealing with the CRFStrategies for Dealing with the CRF
Strategies for Dealing with the CRF
Mary K.D. D'Rozario
 
Specfic research and analysis
Specfic research and analysisSpecfic research and analysis
Specfic research and analysis
JakeMason94
 
2 nation pledge for the elderly
2 nation pledge for the elderly2 nation pledge for the elderly
2 nation pledge for the elderly
meridianstdnt
 
Office furniture Office Design
Office furniture Office DesignOffice furniture Office Design
Office furniture Office Design
wallaceperkins
 
The Hero Plan · Gamification World Congress 2013
The Hero Plan · Gamification World Congress 2013The Hero Plan · Gamification World Congress 2013
The Hero Plan · Gamification World Congress 2013
Daniel Vecino Castel
 
Model Belajar "Probelm Base Learning"
Model Belajar "Probelm Base Learning"Model Belajar "Probelm Base Learning"
Model Belajar "Probelm Base Learning"
Harrys Samosir
 
Rencana pelaksanaan pembelajaran smt 2
Rencana pelaksanaan pembelajaran smt 2 Rencana pelaksanaan pembelajaran smt 2
Rencana pelaksanaan pembelajaran smt 2
Ahmad Sodiq
 
Оконная пленка Korqu 3 (Тепловые дыры))
Оконная пленка Korqu 3 (Тепловые дыры))Оконная пленка Korqu 3 (Тепловые дыры))
Оконная пленка Korqu 3 (Тепловые дыры))
Сергей Назаров
 
20130309santo lee
20130309santo lee20130309santo lee
20130309santo lee
Shigeo Lee
 
Research & analyses
Research & analysesResearch & analyses
Research & analyses
JakeMason94
 
Emprender · Anda que no mola ni nada
Emprender · Anda que no mola ni nadaEmprender · Anda que no mola ni nada
Emprender · Anda que no mola ni nada
Daniel Vecino Castel
 

Similar to Web e device in real time con asp.net Signal R (20)

Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Christian Heindel
 
SignalR
SignalR SignalR
SignalR
Sarvesh Kushwaha
 
Signal r core workshop - netconf
Signal r core workshop - netconf Signal r core workshop - netconf
Signal r core workshop - netconf
Miguel Angel Teheran Garcia
 
SignalR powered real-time x-plat mobile apps!
SignalR powered real-time x-plat mobile apps!SignalR powered real-time x-plat mobile apps!
SignalR powered real-time x-plat mobile apps!
Sam Basu
 
Introduction to SignalR
Introduction to SignalRIntroduction to SignalR
Introduction to SignalR
Adam Mokan
 
Using SignalR with Kendo UI
Using SignalR with Kendo UIUsing SignalR with Kendo UI
Using SignalR with Kendo UI
Abhishek Kant
 
Zephyr Introduction - Nordic Webinar - Sept. 24.pdf
Zephyr Introduction - Nordic Webinar - Sept. 24.pdfZephyr Introduction - Nordic Webinar - Sept. 24.pdf
Zephyr Introduction - Nordic Webinar - Sept. 24.pdf
AswathRangaraj1
 
SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!
Sam Basu
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
CodeFest
 
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Gilad Garon
 
Internet of things (IoT) with Azure
Internet of things (IoT) with AzureInternet of things (IoT) with Azure
Internet of things (IoT) with Azure
Vinoth Rajagopalan
 
.NET Everywhere and for Everyone
.NET Everywhere and for Everyone.NET Everywhere and for Everyone
.NET Everywhere and for Everyone
James Montemagno
 
DevOpsCon 2015 - DevOps in Mobile Games
DevOpsCon 2015 - DevOps in Mobile GamesDevOpsCon 2015 - DevOps in Mobile Games
DevOpsCon 2015 - DevOps in Mobile Games
Andreas Katzig
 
WKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with Intel
WKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with IntelWKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with Intel
WKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with Intel
Amazon Web Services
 
Io t solutions world congress 2018 review Henk Jan van Wijk Conclusion Connect
Io t solutions world congress 2018 review Henk Jan van Wijk  Conclusion Connect Io t solutions world congress 2018 review Henk Jan van Wijk  Conclusion Connect
Io t solutions world congress 2018 review Henk Jan van Wijk Conclusion Connect
Conclusion Connect enabling industry 4.0 with IoT
 
Develop - Race to the Finish! Accelerate Your Skills
Develop - Race to the Finish! Accelerate Your SkillsDevelop - Race to the Finish! Accelerate Your Skills
Develop - Race to the Finish! Accelerate Your Skills
LaurenWendler
 
.NET Core Today and Tomorrow
.NET Core Today and Tomorrow.NET Core Today and Tomorrow
.NET Core Today and Tomorrow
Jon Galloway
 
Introduction to SignalR
Introduction to SignalRIntroduction to SignalR
Introduction to SignalR
University of Hawai‘i at Mānoa
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureGlobal Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Vinoth Rajagopalan
 
Building Real time Application with Azure SignalR Service
Building Real time Application with Azure SignalR ServiceBuilding Real time Application with Azure SignalR Service
Building Real time Application with Azure SignalR Service
Jalpesh Vadgama
 
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Christian Heindel
 
SignalR powered real-time x-plat mobile apps!
SignalR powered real-time x-plat mobile apps!SignalR powered real-time x-plat mobile apps!
SignalR powered real-time x-plat mobile apps!
Sam Basu
 
Introduction to SignalR
Introduction to SignalRIntroduction to SignalR
Introduction to SignalR
Adam Mokan
 
Using SignalR with Kendo UI
Using SignalR with Kendo UIUsing SignalR with Kendo UI
Using SignalR with Kendo UI
Abhishek Kant
 
Zephyr Introduction - Nordic Webinar - Sept. 24.pdf
Zephyr Introduction - Nordic Webinar - Sept. 24.pdfZephyr Introduction - Nordic Webinar - Sept. 24.pdf
Zephyr Introduction - Nordic Webinar - Sept. 24.pdf
AswathRangaraj1
 
SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!
Sam Basu
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
CodeFest
 
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Gilad Garon
 
Internet of things (IoT) with Azure
Internet of things (IoT) with AzureInternet of things (IoT) with Azure
Internet of things (IoT) with Azure
Vinoth Rajagopalan
 
.NET Everywhere and for Everyone
.NET Everywhere and for Everyone.NET Everywhere and for Everyone
.NET Everywhere and for Everyone
James Montemagno
 
DevOpsCon 2015 - DevOps in Mobile Games
DevOpsCon 2015 - DevOps in Mobile GamesDevOpsCon 2015 - DevOps in Mobile Games
DevOpsCon 2015 - DevOps in Mobile Games
Andreas Katzig
 
WKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with Intel
WKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with IntelWKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with Intel
WKS420 Create an IoT Gateway & Establish a Data Pipeline to AWS IoT with Intel
Amazon Web Services
 
Develop - Race to the Finish! Accelerate Your Skills
Develop - Race to the Finish! Accelerate Your SkillsDevelop - Race to the Finish! Accelerate Your Skills
Develop - Race to the Finish! Accelerate Your Skills
LaurenWendler
 
.NET Core Today and Tomorrow
.NET Core Today and Tomorrow.NET Core Today and Tomorrow
.NET Core Today and Tomorrow
Jon Galloway
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with AzureGlobal Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Vinoth Rajagopalan
 
Building Real time Application with Azure SignalR Service
Building Real time Application with Azure SignalR ServiceBuilding Real time Application with Azure SignalR Service
Building Real time Application with Azure SignalR Service
Jalpesh Vadgama
 

Recently uploaded (20)

RAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptx
RAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptxRAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptx
RAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptx
JenTeruel1
 
15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf
15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf
15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf
NgocThang9
 
Multi objective genetic approach with Ranking
Multi objective genetic approach with RankingMulti objective genetic approach with Ranking
Multi objective genetic approach with Ranking
namisha18
 
CS3451-OPERATING-SYSTEM NOTES ALL123.pdf
CS3451-OPERATING-SYSTEM NOTES ALL123.pdfCS3451-OPERATING-SYSTEM NOTES ALL123.pdf
CS3451-OPERATING-SYSTEM NOTES ALL123.pdf
PonniS7
 
Cyber Security_ Protecting the Digital World.pptx
Cyber Security_ Protecting the Digital World.pptxCyber Security_ Protecting the Digital World.pptx
Cyber Security_ Protecting the Digital World.pptx
Harshith A S
 
Mathematics_behind_machine_learning_INT255.pptx
Mathematics_behind_machine_learning_INT255.pptxMathematics_behind_machine_learning_INT255.pptx
Mathematics_behind_machine_learning_INT255.pptx
ppkmurthy2006
 
Best KNow Hydrogen Fuel Production in the World The cost in USD kwh for H2
Best KNow  Hydrogen Fuel Production in the World The cost in USD kwh for H2Best KNow  Hydrogen Fuel Production in the World The cost in USD kwh for H2
Best KNow Hydrogen Fuel Production in the World The cost in USD kwh for H2
Daniel Donatelli
 
Env and Water Supply Engg._Dr. Hasan.pdf
Env and Water Supply Engg._Dr. Hasan.pdfEnv and Water Supply Engg._Dr. Hasan.pdf
Env and Water Supply Engg._Dr. Hasan.pdf
MahmudHasan747870
 
Equipment for Gas Metal Arc Welding Process
Equipment for Gas Metal Arc Welding ProcessEquipment for Gas Metal Arc Welding Process
Equipment for Gas Metal Arc Welding Process
AhmadKamil87
 
Indian Soil Classification System in Geotechnical Engineering
Indian Soil Classification System in Geotechnical EngineeringIndian Soil Classification System in Geotechnical Engineering
Indian Soil Classification System in Geotechnical Engineering
Rajani Vyawahare
 
decarbonization steel industry rev1.pptx
decarbonization steel industry rev1.pptxdecarbonization steel industry rev1.pptx
decarbonization steel industry rev1.pptx
gonzalezolabarriaped
 
G8 mini project for alcohol detection and engine lock system with GPS tracki...
G8 mini project for  alcohol detection and engine lock system with GPS tracki...G8 mini project for  alcohol detection and engine lock system with GPS tracki...
G8 mini project for alcohol detection and engine lock system with GPS tracki...
sahillanjewar294
 
Introduction to Safety, Health & Environment
Introduction to Safety, Health  & EnvironmentIntroduction to Safety, Health  & Environment
Introduction to Safety, Health & Environment
ssuserc606c7
 
Industrial Valves, Instruments Products Profile
Industrial Valves, Instruments Products ProfileIndustrial Valves, Instruments Products Profile
Industrial Valves, Instruments Products Profile
zebcoeng
 
CFOT Fiber Optics FOA CERTIFICATION.pptx
CFOT Fiber Optics FOA CERTIFICATION.pptxCFOT Fiber Optics FOA CERTIFICATION.pptx
CFOT Fiber Optics FOA CERTIFICATION.pptx
MohamedShabana37
 
04 MAINTENANCE OF CONCRETE PAVEMENTS.ppt
04  MAINTENANCE OF CONCRETE PAVEMENTS.ppt04  MAINTENANCE OF CONCRETE PAVEMENTS.ppt
04 MAINTENANCE OF CONCRETE PAVEMENTS.ppt
sreenath seenu
 
Wireless-Charger presentation for seminar .pdf
Wireless-Charger presentation for seminar .pdfWireless-Charger presentation for seminar .pdf
Wireless-Charger presentation for seminar .pdf
AbhinandanMishra30
 
Lecture -3 Cold water supply system.pptx
Lecture -3 Cold water supply system.pptxLecture -3 Cold water supply system.pptx
Lecture -3 Cold water supply system.pptx
rabiaatif2
 
IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...
IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...
IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...
ssuserd9338b
 
Cloud Computing concepts and technologies
Cloud Computing concepts and technologiesCloud Computing concepts and technologies
Cloud Computing concepts and technologies
ssuser4c9444
 
RAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptx
RAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptxRAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptx
RAMSES- EDITORIAL SAMPLE FOR DSSPC C.pptx
JenTeruel1
 
15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf
15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf
15. Smart Cities Big Data, Civic Hackers, and the Quest for a New Utopia.pdf
NgocThang9
 
Multi objective genetic approach with Ranking
Multi objective genetic approach with RankingMulti objective genetic approach with Ranking
Multi objective genetic approach with Ranking
namisha18
 
CS3451-OPERATING-SYSTEM NOTES ALL123.pdf
CS3451-OPERATING-SYSTEM NOTES ALL123.pdfCS3451-OPERATING-SYSTEM NOTES ALL123.pdf
CS3451-OPERATING-SYSTEM NOTES ALL123.pdf
PonniS7
 
Cyber Security_ Protecting the Digital World.pptx
Cyber Security_ Protecting the Digital World.pptxCyber Security_ Protecting the Digital World.pptx
Cyber Security_ Protecting the Digital World.pptx
Harshith A S
 
Mathematics_behind_machine_learning_INT255.pptx
Mathematics_behind_machine_learning_INT255.pptxMathematics_behind_machine_learning_INT255.pptx
Mathematics_behind_machine_learning_INT255.pptx
ppkmurthy2006
 
Best KNow Hydrogen Fuel Production in the World The cost in USD kwh for H2
Best KNow  Hydrogen Fuel Production in the World The cost in USD kwh for H2Best KNow  Hydrogen Fuel Production in the World The cost in USD kwh for H2
Best KNow Hydrogen Fuel Production in the World The cost in USD kwh for H2
Daniel Donatelli
 
Env and Water Supply Engg._Dr. Hasan.pdf
Env and Water Supply Engg._Dr. Hasan.pdfEnv and Water Supply Engg._Dr. Hasan.pdf
Env and Water Supply Engg._Dr. Hasan.pdf
MahmudHasan747870
 
Equipment for Gas Metal Arc Welding Process
Equipment for Gas Metal Arc Welding ProcessEquipment for Gas Metal Arc Welding Process
Equipment for Gas Metal Arc Welding Process
AhmadKamil87
 
Indian Soil Classification System in Geotechnical Engineering
Indian Soil Classification System in Geotechnical EngineeringIndian Soil Classification System in Geotechnical Engineering
Indian Soil Classification System in Geotechnical Engineering
Rajani Vyawahare
 
decarbonization steel industry rev1.pptx
decarbonization steel industry rev1.pptxdecarbonization steel industry rev1.pptx
decarbonization steel industry rev1.pptx
gonzalezolabarriaped
 
G8 mini project for alcohol detection and engine lock system with GPS tracki...
G8 mini project for  alcohol detection and engine lock system with GPS tracki...G8 mini project for  alcohol detection and engine lock system with GPS tracki...
G8 mini project for alcohol detection and engine lock system with GPS tracki...
sahillanjewar294
 
Introduction to Safety, Health & Environment
Introduction to Safety, Health  & EnvironmentIntroduction to Safety, Health  & Environment
Introduction to Safety, Health & Environment
ssuserc606c7
 
Industrial Valves, Instruments Products Profile
Industrial Valves, Instruments Products ProfileIndustrial Valves, Instruments Products Profile
Industrial Valves, Instruments Products Profile
zebcoeng
 
CFOT Fiber Optics FOA CERTIFICATION.pptx
CFOT Fiber Optics FOA CERTIFICATION.pptxCFOT Fiber Optics FOA CERTIFICATION.pptx
CFOT Fiber Optics FOA CERTIFICATION.pptx
MohamedShabana37
 
04 MAINTENANCE OF CONCRETE PAVEMENTS.ppt
04  MAINTENANCE OF CONCRETE PAVEMENTS.ppt04  MAINTENANCE OF CONCRETE PAVEMENTS.ppt
04 MAINTENANCE OF CONCRETE PAVEMENTS.ppt
sreenath seenu
 
Wireless-Charger presentation for seminar .pdf
Wireless-Charger presentation for seminar .pdfWireless-Charger presentation for seminar .pdf
Wireless-Charger presentation for seminar .pdf
AbhinandanMishra30
 
Lecture -3 Cold water supply system.pptx
Lecture -3 Cold water supply system.pptxLecture -3 Cold water supply system.pptx
Lecture -3 Cold water supply system.pptx
rabiaatif2
 
IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...
IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...
IPC-9716_2024 Requirements for Automated Optical Inspection (AOI) Process Con...
ssuserd9338b
 
Cloud Computing concepts and technologies
Cloud Computing concepts and technologiesCloud Computing concepts and technologies
Cloud Computing concepts and technologies
ssuser4c9444
 

Web e device in real time con asp.net Signal R

  • 1. Web e device in real time con ASP.NET SignalR Giuseppe Marchi Microsoft MVP SharePoint Luca Zulian MCTS ASP.NET 4
  • 2. What is SignalR? Under the Hood Building Apps with SignalR SignalR outside .NET Framework _1 _3 _5 _18 Performance & testing _21
  • 3. What is SignalR for Developers? • A library for ASP.NET developers that simplifies the process of adding real-time functionality • An Open Source library (github.com/SignalR/SignalR) • Well Documented library (asp.net/signalr) • Always up to date
  • 4. What SignalR offers to Developers • Real-time, persistent connection abstraction over HTTP for .NET (supports Web Sockets, and falls back to other compatible techniques for older browsers) • Simplicity • Reach • Performance • Scalability • Security • Extensibility
  • 6. Before Start: Components • Meta Package (Microsoft.AspNet.SignalR) • Core (Microsoft.AspNet.SignalR.Core) • Hosts (Microsoft.AspNet.SignalR.SystemWeb, Microsoft.AspNet.SignalR.Owin) • Clients (Microsoft.AspNet.SignalR.Js, Microsoft.AspNet.SignalR.Client) • Scaleout Buses (Microsoft.AspNet.SignalR.Redis, Microsoft.AspNet.SignalR.ServiceBus)
  • 8. Simplicity: two level API Choose the level of abstraction that works for you
  • 9. Two level API: Configuration Remember: call RouteTable.Routes.MapHubs() as the first line of code in the Application_Start method, this must be called before you register any other routes.
  • 10. Two level API: Hub Configuration Remember: call RouteTable.Routes.MapConnection() as the first line of code in the Application_Start method, this must be called before you register any other routes.
  • 11. Two level API: PersistentConnection • Low-level • Simple endpoint for sending single-recipient, grouped, or broadcast messages • Gives direct access to the low- level communication protocols • PersistentConnection class • Connect, reconnect & disconnect semantics
  • 12. Two level API: PersistentConnection PersistentConnection API
  • 13. Two level API: PersistentConnection
  • 14. DEMO
  • 15. Two level API: Hub • More high-level pipeline • Allows your client and server to call methods each other directly (internal routing) • Allows you to pass strongly typed parameters to methods, enabling model binding • Hub class • Automatic client proxy generation (Javascript)
  • 16. Two level API: Hub Hub API
  • 18. DEMO
  • 19. Simplicity: Javascript client • Javascript proxy (AUTOMATICALLY created on ~/signalr/hubs)
  • 20. Simplicity: Windows8 & WP8 client • Microsoft.AspNet.SignalR.Client • Hub • PersistentConnection
  • 21. Transport Negotiation SignalR isolates us from low-level details, giving us the impression of working on a permanently open persistent connection
  • 22. But isn’t real-time web just chat? • Dashboards & monitoring • Collaborative anything • Job progress • Real-time forms • Gaming • …
  • 23. SignalR outside .NET framework • SignalR-ObjC - Native for iOS clients • SignalA - Native for Android clients • Xamarin (in xamarin branch https://github.com/SignalR/SignalR/tree/xamarin, but need some tricks)
  • 24. SignalR on IIS? Supported server operating systems • Windows Server 2012 • Windows Server 2008 r2. • Windows 8 • Windows 7 • Windows Azure Supported .NET Framework versions • SignalR is supported on both .NET Framework version 4 and 4.5. For WebSockets to be supported, .NET Framework 4.5 must be used. Supported IIS versions • IIS 8 or IIS 8 Express • IIS 7 and 7.5. Support for extensionless URLs is required • IIS must be running in integrated mode; classic mode is not supported • The hosting application must be running in full trust mode
  • 25. SignalR only on IIS? • Console Applications, Windows Services (Microsoft.AspNet.SignalR.SelfHost) • OWIN (Microsoft.AspNet.SignalR.Owin) • Mono
  • 26. SignalR performance & testing • SignalR Crank or Stress projects from repository • Performance Monitor (Perfmon.exe)
  • 27. SignalR performance & testing • Connections Connected • Connections Reconnected • Connections Disonnected • Connections Current • Connection Messages Received Total • Connection Messages Sent Total • Connection Messages Received/Sec • Connection Messages Sent/Sec SignalR Performance Counter
  • 28. SignalR performance considerations Reducing message size • JsonIgnore attribute • JsonProperty attribute to reduce message size Modify SignalR configuration settings • DefaultMessageBufferSize Modify ASP.NET configuration settings • Maximum concurrent requests per CPU • Request Queue Limit Modify IIS configuration settings • Max concurrent requests per application
  • 29. Q&A
  • 30. Contatti OverNet Education • TEL. +39 02 365738 • EMAIL info@wpc2013.it • WEB www.WPC2013.it • TWITTER @Overnete