SignalR is an open-source library for ASP.NET that enables real-time web functionality. It allows for adding bi-directional communication between server and client-side code. SignalR handles connection management and transport selection to enable features like chat, progress updates, and collaboration across devices. It supports many platforms including web, mobile, and desktop and abstracts the network transport layer to focus on application development. SignalR uses techniques like long polling to establish a persistent connection for real-time communication when websockets are not available.
A quick overview of API Design Workflow, describing my views on waterfall API design approach, why we've built Apiary a certain way and random notes from the API industry
Tools for designing and building great APIsKong Inc.
A review of tools that can be used to design APIs, understand how API design works and to mock infrastructure to test your assumptions.
We all know that a happy developer is a powerful ally.
The focus of this presentation is on the creation of APIs with the support of tools to achieve this. The goal is to create APIs that are simple for developers to understand and consume, powerful enough to be maintained by your business, in minutes rather than hours.
A survey of various tools and techniques commonly used by API craftsman. API specification languages, testing, debugging and analytics are covered.
As presented by Jason Harmon at Booz Allen Hamilton's "Distinguished Speaker Series" 3/2/2015
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)Nordic APIs
This is a session given by Gustaf Nyman at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
In enterprises the majority of APIs are internal and may count in hundreds. APIs are often implemented in and used from a variety of languages and platforms, and legacy system and protocols are ever-present. As APIs are increasingly part of business strategies, API management becomes an important concern of the whole organisation.
Gustaf has spent more than 15 years building API infrastructure for enterprises. In this talk, he shares his thoughts on designing and implementing a long-lasting API management strategy.
A quick overview of API Design Workflow, describing my views on waterfall API design approach, why we've built Apiary a certain way and random notes from the API industry
Tools for designing and building great APIsKong Inc.
A review of tools that can be used to design APIs, understand how API design works and to mock infrastructure to test your assumptions.
We all know that a happy developer is a powerful ally.
The focus of this presentation is on the creation of APIs with the support of tools to achieve this. The goal is to create APIs that are simple for developers to understand and consume, powerful enough to be maintained by your business, in minutes rather than hours.
A survey of various tools and techniques commonly used by API craftsman. API specification languages, testing, debugging and analytics are covered.
As presented by Jason Harmon at Booz Allen Hamilton's "Distinguished Speaker Series" 3/2/2015
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)Nordic APIs
This is a session given by Gustaf Nyman at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
In enterprises the majority of APIs are internal and may count in hundreds. APIs are often implemented in and used from a variety of languages and platforms, and legacy system and protocols are ever-present. As APIs are increasingly part of business strategies, API management becomes an important concern of the whole organisation.
Gustaf has spent more than 15 years building API infrastructure for enterprises. In this talk, he shares his thoughts on designing and implementing a long-lasting API management strategy.
Microservices in action: How to actually build them3scale
Andrzej from the 3scale team gave this talk during the API Meetup Barcelona about how to practically build microservices using AWS Lambda, Amazon API Gateway, the JAWS framework and 3scale API Management.
Here is more info about the meetup:
http://www.meetup.com/API-Meetup-Barcelona/events/226165254/
Blowing up the Monolith: Practical Advice on MicroservicesNordic APIs
Many companies are transitioning to microservices but what factors influence whether or not to “blow up” your monolith? The advantages of moving to a microservices architecture include increased performance, deployability and scalability, but these advantages come at the cost of increased complexity. This presentation will cover the architectural considerations involved in transitioning from a monolithic to a microservices or service-oriented architecture. Take a technical look into the factors to consider during a transition including how to define boundaries between microservices, interservice communication patterns and testing. Learn strategies for transitioning such as the “ice cream scoop,” “lego” and “nuclear” options, routing and versioning strategies, and how to handle libraries and security to maximize service independence.
Learn how Autodesk is transforming its services architecture to lightweight microservices using a combination of Amazon Web Services and Apigee. Topic include:
- real world microservices examples
- how to use AWS Lambda and Apigee to build serverless APIs
- how to manage microservices in the cloud
Webcast: API-Centric Architecture for Building Context-Aware AppsApigee | Google Cloud
Context-aware apps - apps that know who you are, where you are, and what you've done - have been all the rage the last few years. Facebook's news feeds, Google Now, and Amazon Recommendations are examples of context-aware applications.
Over the last few years, advancements in machine learning, big data, NoSQL, and API technologies has drastically reduced the complexity of building such apps, but requires a brand new approach system architecture.
This presentation covers:
Lambda architecture and Microservices - two new architectural styles to build contextual apps at scale
How companies like Twitter and Netflix have implemented lambda architecture and microservices for recommendations, targeting, and more
How Apigee uses both new architectures to implement predictive analytics through Insights (our big data predictive analytics product)
Developers are increasingly using Kubernetes to deploy, scale, and manage their containerized applications. So, how can you securely manage and gain visibility for the APIs deployed for these applications?
This webcast will cover:
- how native integration allows app developers to easily manage application endpoints
- how to transparently add security [oauth/key] for your application containers and endpoints
- how to transparently manage traffic and track analytics for endpoints exposed through Kubernetes
Continuous Integration and Delivery at Shapeways (Matt Boyle)Nordic APIs
This is a session given by Matt Boyle at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
We’ve spent a lot of time over the years at Shapeways building, honing, and improving our deployment and test process for our web properties and API. We started with straight-to-prod commits (which caused quite a bit of downtime!), graduated to working in two- and then one-week release cycles (which caused a lot of anxiety!), to where we are today: releasing 5-15 times a day, with automated testing, using continuous improvement and delivery best practices and tools. We’ve taken the complexity and anxiety out of our deployment process by implementing ChatOps, or using a bot to handle the sorts of tasks computers are great at, namely performing complex tasks repeatedly without error. This enables humans to focus on tasks that we’re uniquely suited for, namely solving complex problems and architecting reliable, resilient, and scalable solutions for our users. We’d love to share some of what we’ve learned along the way, from building automated testing tools, to selecting and implementing open-source solutions, to how we took our global deployment process from one hour to 4 minutes. We’d also like to share our vision of the future: what inspires us, what we hope to achieve in the coming weeks, months, and years, and how we’re going about doing it.
APIs Are Just Like LEGO Blocks | APPSeCONNECTAPPSeCONNECT
APIs are becoming more and more popular day by day. Just like LEGO Blocks, #API serves as universal standardized building blocks. In the case of APIs, these building blocks create an application or #software rather than creating houses.
Learn more about proper API Management and how they can help improve the overall #business process from this presentation!
Integrate your Business applications under one single platform and automate the business process: https://www.appseconnect.com/integrations/
apidays LIVE Paris - The Business of APIs by Jed Ngapidays
apidays LIVE Paris - Responding to the New Normal with APIs for Business, People and Society
December 8, 9 & 10, 2020
The Business of APIs: Lessons from building the world's largest API Marketplace
Jed Ng, Tech & API Investor
Centralization and automation of containerized service (microservices) management with the ability to control policies consistently across several service meshes increases visibility and control over all API traffic while enabling enterprises to independently and rapidly deliver on innovation without the bottlenecks. Check out our demo to see how Axway and AMPLIFY Central provide packaged maturity for service mesh management along with centralized policy management of APIs and Microservices that run in the cloud and/or on-premises infrastructure.
apidays LIVE Australia 2020 - Have your cake and eat it too: GraphQL? REST? W...apidays
apidays LIVE Australia 2020 - Building Business Ecosystems
Have your cake and eat it too: GraphQL? REST? Why not have both!
Roy Mor, Technical Lead at Sisense
Get the inside scoop on how Kubernetes evolved within Google, and why it might be the right container orchestration engine for your enterprise microservices. K8s is one of the most popular production grade container orchestration engines used by large scale systems such as Ebay, viacom, and even Apigee ! Allan will go over specific use cases around web-scale that influenced Kubernetes’ design principles, and delve into the technical merits of using Kubernetes for developers. This session is a must for any developer or architect.
apidays LIVE Hong Kong 2021 - GraphQL : Beyond APIs, graph your enterprise by...apidays
apidays LIVE Hong Kong 2021 - API Ecosystem & Data Interchange
August 25 & 26, 2021
GraphQL : Beyond APIs, graph your enterprise
Maxime Topolov, CEO of GraphQL Portal
Check out our API conferences @ https://www.apidays.global/
apidays LIVE Paris - Innovation and rejuvenation combined: a beneficial appro...apidays
apidays LIVE Paris - Responding to the New Normal with APIs for Business, People and Society
December 8, 9 & 10, 2020
Innovation and rejuvenation combined: a beneficial approach in mixing API and ESB. Based on a real case-study.
Francois Rivard, CEO of Astrakhan
Microservices in action: How to actually build them3scale
Andrzej from the 3scale team gave this talk during the API Meetup Barcelona about how to practically build microservices using AWS Lambda, Amazon API Gateway, the JAWS framework and 3scale API Management.
Here is more info about the meetup:
http://www.meetup.com/API-Meetup-Barcelona/events/226165254/
Blowing up the Monolith: Practical Advice on MicroservicesNordic APIs
Many companies are transitioning to microservices but what factors influence whether or not to “blow up” your monolith? The advantages of moving to a microservices architecture include increased performance, deployability and scalability, but these advantages come at the cost of increased complexity. This presentation will cover the architectural considerations involved in transitioning from a monolithic to a microservices or service-oriented architecture. Take a technical look into the factors to consider during a transition including how to define boundaries between microservices, interservice communication patterns and testing. Learn strategies for transitioning such as the “ice cream scoop,” “lego” and “nuclear” options, routing and versioning strategies, and how to handle libraries and security to maximize service independence.
Learn how Autodesk is transforming its services architecture to lightweight microservices using a combination of Amazon Web Services and Apigee. Topic include:
- real world microservices examples
- how to use AWS Lambda and Apigee to build serverless APIs
- how to manage microservices in the cloud
Webcast: API-Centric Architecture for Building Context-Aware AppsApigee | Google Cloud
Context-aware apps - apps that know who you are, where you are, and what you've done - have been all the rage the last few years. Facebook's news feeds, Google Now, and Amazon Recommendations are examples of context-aware applications.
Over the last few years, advancements in machine learning, big data, NoSQL, and API technologies has drastically reduced the complexity of building such apps, but requires a brand new approach system architecture.
This presentation covers:
Lambda architecture and Microservices - two new architectural styles to build contextual apps at scale
How companies like Twitter and Netflix have implemented lambda architecture and microservices for recommendations, targeting, and more
How Apigee uses both new architectures to implement predictive analytics through Insights (our big data predictive analytics product)
Developers are increasingly using Kubernetes to deploy, scale, and manage their containerized applications. So, how can you securely manage and gain visibility for the APIs deployed for these applications?
This webcast will cover:
- how native integration allows app developers to easily manage application endpoints
- how to transparently add security [oauth/key] for your application containers and endpoints
- how to transparently manage traffic and track analytics for endpoints exposed through Kubernetes
Continuous Integration and Delivery at Shapeways (Matt Boyle)Nordic APIs
This is a session given by Matt Boyle at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
We’ve spent a lot of time over the years at Shapeways building, honing, and improving our deployment and test process for our web properties and API. We started with straight-to-prod commits (which caused quite a bit of downtime!), graduated to working in two- and then one-week release cycles (which caused a lot of anxiety!), to where we are today: releasing 5-15 times a day, with automated testing, using continuous improvement and delivery best practices and tools. We’ve taken the complexity and anxiety out of our deployment process by implementing ChatOps, or using a bot to handle the sorts of tasks computers are great at, namely performing complex tasks repeatedly without error. This enables humans to focus on tasks that we’re uniquely suited for, namely solving complex problems and architecting reliable, resilient, and scalable solutions for our users. We’d love to share some of what we’ve learned along the way, from building automated testing tools, to selecting and implementing open-source solutions, to how we took our global deployment process from one hour to 4 minutes. We’d also like to share our vision of the future: what inspires us, what we hope to achieve in the coming weeks, months, and years, and how we’re going about doing it.
APIs Are Just Like LEGO Blocks | APPSeCONNECTAPPSeCONNECT
APIs are becoming more and more popular day by day. Just like LEGO Blocks, #API serves as universal standardized building blocks. In the case of APIs, these building blocks create an application or #software rather than creating houses.
Learn more about proper API Management and how they can help improve the overall #business process from this presentation!
Integrate your Business applications under one single platform and automate the business process: https://www.appseconnect.com/integrations/
apidays LIVE Paris - The Business of APIs by Jed Ngapidays
apidays LIVE Paris - Responding to the New Normal with APIs for Business, People and Society
December 8, 9 & 10, 2020
The Business of APIs: Lessons from building the world's largest API Marketplace
Jed Ng, Tech & API Investor
Centralization and automation of containerized service (microservices) management with the ability to control policies consistently across several service meshes increases visibility and control over all API traffic while enabling enterprises to independently and rapidly deliver on innovation without the bottlenecks. Check out our demo to see how Axway and AMPLIFY Central provide packaged maturity for service mesh management along with centralized policy management of APIs and Microservices that run in the cloud and/or on-premises infrastructure.
apidays LIVE Australia 2020 - Have your cake and eat it too: GraphQL? REST? W...apidays
apidays LIVE Australia 2020 - Building Business Ecosystems
Have your cake and eat it too: GraphQL? REST? Why not have both!
Roy Mor, Technical Lead at Sisense
Get the inside scoop on how Kubernetes evolved within Google, and why it might be the right container orchestration engine for your enterprise microservices. K8s is one of the most popular production grade container orchestration engines used by large scale systems such as Ebay, viacom, and even Apigee ! Allan will go over specific use cases around web-scale that influenced Kubernetes’ design principles, and delve into the technical merits of using Kubernetes for developers. This session is a must for any developer or architect.
apidays LIVE Hong Kong 2021 - GraphQL : Beyond APIs, graph your enterprise by...apidays
apidays LIVE Hong Kong 2021 - API Ecosystem & Data Interchange
August 25 & 26, 2021
GraphQL : Beyond APIs, graph your enterprise
Maxime Topolov, CEO of GraphQL Portal
Check out our API conferences @ https://www.apidays.global/
apidays LIVE Paris - Innovation and rejuvenation combined: a beneficial appro...apidays
apidays LIVE Paris - Responding to the New Normal with APIs for Business, People and Society
December 8, 9 & 10, 2020
Innovation and rejuvenation combined: a beneficial approach in mixing API and ESB. Based on a real case-study.
Francois Rivard, CEO of Astrakhan
Part 1 - In these slides you will get to know signal r theory and the protocols it uses for communication between client and server.
Signal R Uses Web Sockets, Ajax Long Polling, Forever Frame or Event Source with the concept of hubs and persistent connection. Download the slides and use it the way you want.
MicroEJ software solution for IoT and embedded devicesMicroEJ
MicroEJ is a profitable IoT solutions for OEMs, application developers and service providers for:
- Device software development
- Application development
- Application deployment
It enables to deliver user experience and business models similar to mobile Internet for embedded and connected devices with strong cost constraints and strict resource limitations (processor performance, RAM and flash memory footprint, low-power).
MicroEJ also combines the techniques and methods that drove the PC and mobile Internet software industry, with the complex technical foundations of embedded systems (fragmented processor architectures and hardware-dependent software).
WebSphere Liberty Rtcomm: WebRTC Middleware for the EnterpriseBrian Pulito
In order to provide the type of services their customers crave, your clients need to be able to provide blazing fast communication capabilities and access important information in the blink of an eye. WebRTC (Web Real-Time Communications) allows for the creation of next-generation communication applications without the need for browser plugins. WebSphere Application Server Liberty Profile is changing the way people communicate by making it easy to provide web page context as part of real-time conversations. This webinar will cover all of the real-time communications features recently released in WebSphere Liberty, including the new Rtcomm feature for rapid development of WebRTC based applications, and the open-source Rtcomm client-side libraries. (link to webinar replay: http://www.websphereusergroup.org/khatch/go/gallery/item/1543395?type=video)
A modified version of my Desert Code Camp 2011.2 presentation on SignalR from November 5th, 2011.
It's modified since I'm more of a talker and rarely utilize bullet points and much text in my slides.
As soon as we start working on an API, architecture issues arise. Many mistaken common beliefs turn out to be fiction in this area. A poorly designed API architecture will lead to misuse or – even worse – not be used at all by its intended clients: application developers.
To facilitate and accelerate design and development of your APIs, we share our vision and beliefs with you in this Reference Card. They come from our direct experience on API projects.
IoT with SignalR & .NET Gadgeteer - NetMF@WorkMirco Vanini
Internet of things è vista come una possibile evoluzione dell'uso della Rete. Gli oggetti si rendono riconoscibili e acquisiscono intelligenza grazie al fatto di poter comunicare dati su se stessi e accedere ad informazioni aggregate da parte di altri. Partendo da queste affermazioni il talk preenterà una soluzione per il controllo ed il monitoraggio centralizzato dello stato di un sistema embedded a cui sono collegati una rete di sensori e di attuatori di varia natura attraverso l'utilizzo di SignalR. Tramite questa tecnologia è possibile realizzare servizi di notifica "push" con una straordinaria reattività, il tutto utilizzando il puro e semplice http
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Let's dive deeper into the world of ODC! Ricardo Alves (OutSystems) will join us to tell all about the new Data Fabric. After that, Sezen de Bruijn (OutSystems) will get into the details on how to best design a sturdy architecture within ODC.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
5. Why do we need real-time?
- New email
- Twitter/Facebook updates
- Stock Ticker/Live Auctions
- Game Scores
- Real-time Notifications
- Turn-by-Turn or Shooter Games
- Collaboration
- Progress Bars
- And obviously, Chat
No dearth of examples where real-time communication in needed ..
6. Challenges
- Building real-time applications is difficult
- Transcends boundaries of choice in development platforms
- Part of the problem is HTTP – Request/Response protocol
HTTP = HyperText Transfer Protocol | Obviously works, but has
limitations!
- Statelessness of web applications
Need open transport channel between server and clients for
bidirectional or full-duplex communication.
8. Existing Technologies .. Contd.
Long Polling – server does not respond unless X happens, client polls
after data receive or time-out
Image courtesy @maartenballiauw
Downsides:
• Needs orchestration
• Custom code on either end
9. Existing Technologies .. Others
- Use plugins like Silverlight/Flash – to communicate through sockets
- Forever Frame (execute script blocks from server in iFrame)
- Server sent Events (Push or Stream from server)
- Native HTML 5 Web Sockets (Magic Unicorn world) – true
bidirectional
transport channel; but support can be flaky
Bottom-line:
• Lots of options in existing technologies to build real-time applications
• Not perfect; choose what you need
Wish list:
• Wouldn’t it be nice if someone took care of the network transport layer?
• Would you not want to focus on just your application?
10. Enter SignalR
An async, persistent connection/signalling library for .NET over HTTP ... aids in
building real time, multi-user connected applications.
Persistent client-server connection over best transport .. Abstracts away the
transport layer.
From ASP.NET team-members (Damian Edwards & David Fowler) ..
Not officially MSFT product, but OSS Boom!
https://github.com/SignalR/SignalR
http://jabbr.net/#/rooms/signal
http://shootr.signalr.net/
SignalR is broken up into a few packages on NuGet:
SignalR - Package for SignalR.Server and SignalR.Js
SignalR.Server - Server components needed for SignalR endpoints
SignalR.Js - Javascript client for SignalR
SignalR.Client - .NET client for SignalR
SignalR.WP7, SignalR.WinRT, SignalR.Silverlight – For the cool folks
SignalR.WebSockets - WebSocket Transport for SignalR
11. What is SignalR?
- SignalR is an asynchronous persistent connection/signaling library for
ASP.NET applications
- SignalR makes it easy to build real-time multi-user connected applications
- SignalR abstracts away the network layer for bidirectional real-time
communications, thus helping you focus on building your application
- SignalR includes broad platform support & features a rich API set for aiding
client-server communications
SignalR is quite
awesome!
12. History & Examples
- Both members of Microsoft’s One ASP.NET team
- SignalR had humble beginnings as a side project
- Started as Open Source Software (OSS)
- Matured enough over past couple of years
David Fowler
- Now officially part of Microsoft ASP.NET stack (Yay)!
- Still continues to be open-source @
https://github.com/SignalR/SignalR
Damian
Edwards
- SignalR powered IRC Chat application: https://jabbr.net/
- SignalR powered real-time game:
http://shootr.signalr.net/
13. How it works
- SignalR allows bidirectional communication between client & server
over persistent connections
- SignalR provides simple APIs for Remote Procedure Calls (RPC)
between client & server
- Transport mechanisms are chosen to best fit given client & server
environments
- SignalR manages the network layer for your application, unless you
want control
14. Abstraction of Network Transport!
How it works .. Contd.
Image courtesy
Microsoft
The first time you see SignalR in action ..
“Your brain should have exploded & leaked out of your ears ..” – Scott Hanselman
15. SignalR Internals
- SignalR abstracts bidirectional communication between client & server over
persistent connections
- The choice of network transport relies on available client & server
environments. Applications may also specify transport layer.
- Order of network transports selected by SignalR:
- Web Sockets
Best transport, but with most stringent
- Server Sent Events requirements!
- Forever Frame
- Long Polling
- Ajax Polling
- Best part – SignalR has automatic fallbacks built-in!
16. SignalR API Stack
- SignalR offers consistent interface on top of network technologies
- Developer gets to choose the level of abstraction of network layer
- SignalR API stack offers two modes for controlling the real-time communication
between client & server:
- Hubs
- High level abstraction
- Built on top of Persistent Connections
- Least developer work
- Works for majority of uses
- Will be familiar to developers who have used remote invocation APIs such as .NET Remoting
- Persistent Connections
- Low level access to communication
- Direct developer access to network pipeline
- Access to lot more communication events
- Will be familiar to developers who have used connection-based APIs such as WCF
17. More SignalR APIs
- Specifying network technology if client/server capabilities are known in
advance; saves the hand-shaking time for SignalR connectivity
- Monitor network transport/traffic by turning on logging on the server
- List of clients connected to SignalR server is maintained in-memory on server;
developers may choose to persist based on application needs
- Connection Management
- Connect/Disconnect events
- Grouping Connections
- Authorization
Needed for chatrooms
- Messages from SignalR server can be broadcast to
- All clients
- Specific clients
- Grouped clients
Offers fine-grained control over client
reach from SignalR server!
- SignalR applications can scale out to thousands of clients using Service Bus,
SQL Server or Redis
18. SignalR Platform Support – Server
Side
- Server OS
- Windows Server 2012
- Windows Server 2008 r2
- Windows 8
- Windows 7
- Windows Azure [Does not support Web Sockets yet]
- Server .NET Frameworks
- .NET 4.5
- .NET 4 [Does not support Web Sockets]
- Server IIS Requirements
- IIS 8 or IIS 8 Express [Only ones with Web Socket support]
- IIS 7 and 7.5.
- IIS must be running in integrated mode
- The hosting application must be running in full trust mode
- SignalR applications can be self-hosted in own process outside of IIS using OWIN
(Open Web Interface for .NET) techniques
19. SignalR Platform Support – Client Side
- Client Browsers
- Microsoft Internet Explorer (IE) versions 8, 9 and 10. Modern, Desktop, and Mobile versions
are supported.
- Mozilla Firefox: current version - 1, both Windows and Mac versions.
- Google Chrome: current version - 1, both Windows and Mac versions.
- Safari: current version - 1, both Mac and iOS versions.
- Opera: current version - 1, Windows only.
- Android browser
- Applications that use SignalR in browsers must use jQuery version 1.6.4 or major later
versions
- Windows Desktop & Silverlight applications
- Applications using .NET 4 are supported on Windows XP SP3 or later.
- Applications using .NET Framework 4.5 are supported on Windows Vista or later.
- Windows Store & Windows Phone applications
20. Live Demos & Walkthrough
- Client calls server; Server calls client; seamlessly – Whoa!
- No polling, at least in our code
- Low level – PersistentConnection
more control
- Abstraction – Hub
easier to use
like spokes on a wheel, broadcasting
- Server maintains Clients .. Broadcast to all, group or individual clients
- Built-in Retry logic if transport fails
- Supports scaling out to web farms - backplane support through
Service Bus or Redis (in memory DB) to pump messages between
multiple servers
21. Real-time connectivity for .NET apps
- .NET Mobile clients can be super interactive with SignalR incorporation
- What .NET client apps could add SignalR powered real-time connectivity?
- Console
- Windows Forms & WPF
- Silverlight
- Windows 8 Store Apps
- Windows Phone Apps
- Any other apps running .NET ..
One SignalR NuGet for all .NET
clients
- Think you can bypass the Web entirely?
- Imagine the possibilities for your next .NET app
- Great potential for enterprises
22. Extending SignalR to other platforms
- SignalR makes a lot of sense for Mobile client apps
- Windows 8 & Windows Phone .NET options are great!
- But, we do not live in a silo
- In fact iOS, Android & Windows will coexist in the mobile space
- Would the other platforms be left high & dry?
- Several options to extend SignalR to other non-MSFT platforms
- Let real-time connectivity shine ..
23. Telerik AppBuilder
!! Supports SignalR
!!
- Use HTML5/CSS3/JavaScript to build cross-platform apps
- Telerik’s AppBuilder provides unified IDE to publish to iOS & Android Stores
- One code base across all platforms, with VS integration
- Adaptive Kendo UI Mobile controls
- Learn more @ http://www.telerik.com/appbuilder
24. Xamarin
!! Supports SignalR
!!
- Write cross-platform apps entirely in C# inside Visual Studio
- Compiled into native iOS/Android/Mac applications
- Unified IDE with custom UI for each platform
- Learn more @ http://xamarin.com/
26. Where does this fit?
- Other technologies have solved this problem
- Socket.IO is a client-side Jscript library that talks to node.js
- Nowjs supports namespace sync between client-server
- Primary SignalR advantages
→ Simplicity & ease of use
→ Works natively in .NET
→ Works out of browser
→ Supports Web Sockets for best transport
[ASP.NET 4.5/IIS 8 on Win8 only]
→ Works on other platforms, specially mobile