Giter Site home page Giter Site logo

arrebagrove / signalranddurablefunctions Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fbeltrao/signalranddurablefunctions

0.0 0.0 0.0 2.03 MB

Sample application using SignalR and Azure Durable Functions

C# 42.10% TypeScript 25.74% CSS 2.79% HTML 13.01% JavaScript 16.36%

signalranddurablefunctions's Introduction

Azure Durable Functions integration with SignalR

In this Flight search web application demonstrates the usage of Azure Durable Functions and SignalR.

Application screenshot

Azure Durable Functions

Durable Functions are a feature of Azure Functions currently in preview that allows you to orchestrate an series of activities inside a function. Those activities can be save a file, make a http request, query a database. The Durable Function runtime will orchestrate the functions for you, putting your function to sleep while activities are executed in the background.

SignalR

SignalR is a library that allows a web server to client push communication for ASP.NET core applications (currently in preview).

The Sample application

Application Diagram

Users connect to FlightSearchWeb application, on {url}/flights opening a SignalR connection to receive broadcasts (what people are searching) and their own search results. A search result is submitted to FlightSearchWeb/flightData/search which makes the call to the Durable Azure Function.

The FlightSearchFunction simulates a complex search that uses 3 others APIs (also simulated): Flight, Hotel and Ticket. The search is using durable functions, executing in parallel. What it is special about it is that the we don't want to wait for more than 5 seconds for the ticket (event) search to finish. If it takes too long we just don't return any event in the search result. At the end, the result is posted to the a returnUrl that was define in the search request, allowing the web application to send a direct message to the user that made the search (using SignalR), so that the user browser does not have to poll for statuses.

Running / Debugging

In order to run the sample application make sure you have selected to debug both projects simultaneously in the solution properties.

Debug multiple projects

signalranddurablefunctions's People

Contributors

fbeltrao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.