Alternatives to SignalR logo

Alternatives to SignalR

Firebase, Pusher, RabbitMQ, WebRTC, and MQTT are the most popular alternatives and competitors to SignalR.
493
146

What is SignalR and what are its top alternatives?

SignalR is a real-time web application framework developed by Microsoft that enables bi-directional communication between server and client. It allows for instant updates and notifications to be sent to clients without the need for constant polling. Key features of SignalR include support for WebSockets, Server-side hubs for managing client connections, and the ability to scale out across multiple servers. However, SignalR has limitations such as requiring the use of a Microsoft technology stack, lack of support for non-.NET technologies, and potential performance issues when handling large amounts of traffic.

  1. Socket.IO: Socket.IO is a popular real-time framework for Node.js that allows for bidirectional communication between server and clients using WebSockets. Key features include support for fallback options, auto-reconnection, and broadcast messaging. Pros include wide language support, while cons include potential scalability challenges.

  2. Firebase Realtime Database: Firebase provides a real-time database that syncs data between clients in milliseconds. Key features include offline support, automatic scaling, and built-in security rules. Pros include ease of use and quick setup, while cons include limited querying capabilities.

  3. Pusher: Pusher is a hosted service that simplifies real-time messaging with APIs and SDKs for web, mobile, and IoT devices. Key features include presence channels, private channels, and webhooks. Pros include ease of use and scalability, while cons include pricing based on usage.

  4. AWS IoT: Amazon Web Services (AWS) IoT provides tools to connect devices to the cloud and enable real-time communication. Key features include device management, secure communication, and data processing. Pros include integration with other AWS services, while cons include complex setup for beginners.

  5. SignalWire: SignalWire is a cloud communications platform that offers real-time voice, video, and messaging capabilities. Key features include global reach, advanced security measures, and customizable APIs. Pros include multi-channel support, while cons include pricing based on usage.

  6. Twilio Sync: Twilio Sync is a real-time state synchronization service that enables developers to build collaborative applications. Key features include document storage, event notifications, and access control. Pros include integration with Twilio's other communication APIs, while cons include limited free tier options.

  7. Ably: Ably is a data stream network that provides APIs for real-time messaging, notifications, and streaming. Key features include message queuing, bi-directional messaging, and global data delivery. Pros include multi-protocol support, while cons include pricing based on features.

  8. PubNub: PubNub is a real-time messaging infrastructure-as-a-service that powers low-latency, scalable, and secure communication. Key features include presence detection, history storage, and push notifications. Pros include cross-platform support, while cons include potential cost concerns for high-volume usage.

  9. Syncano: Syncano is a platform for building real-time applications with a focus on data synchronization and event handling. Key features include data modeling, serverless functions, and GraphQL APIs. Pros include ease of use for developers, while cons include limited customization options.

  10. SocketCluster: SocketCluster is an open-source real-time framework for Node.js that supports horizontal scalability and automatic load balancing. Key features include pub/sub system, RPC calls, and authentication mechanisms. Pros include high performance and reliability, while cons include potential complexity for beginners.

Top Alternatives to SignalR

  • Firebase
    Firebase

    Firebase is a cloud service designed to power real-time, collaborative applications. Simply add the Firebase library to your application to gain access to a shared data structure; any changes you make to that data are automatically synchronized with the Firebase cloud and with other clients within milliseconds. ...

  • Pusher
    Pusher

    Pusher is the category leader in delightful APIs for app developers building communication and collaboration features. ...

  • RabbitMQ
    RabbitMQ

    RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received. ...

  • WebRTC
    WebRTC

    It is a free, open project that enables web browsers with Real-Time Communications (RTC) capabilities via simple JavaScript APIs. The WebRTC components have been optimized to best serve this purpose. ...

  • MQTT
    MQTT

    It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium. ...

  • gRPC
    gRPC

    gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking... ...

  • WCF
    WCF

    It is a framework for building service-oriented applications. Using this, you can send data as asynchronous messages from one service endpoint to another. A service endpoint can be part of a continuously available service hosted by IIS, or it can be a service hosted in an application. ...

  • Kafka
    Kafka

    Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design. ...

SignalR alternatives & related posts

Firebase logo

Firebase

40.9K
35.1K
2K
The Realtime App Platform
40.9K
35.1K
+ 1
2K
PROS OF FIREBASE
  • 371
    Realtime backend made easy
  • 270
    Fast and responsive
  • 242
    Easy setup
  • 215
    Real-time
  • 191
    JSON
  • 134
    Free
  • 128
    Backed by google
  • 83
    Angular adaptor
  • 68
    Reliable
  • 36
    Great customer support
  • 32
    Great documentation
  • 25
    Real-time synchronization
  • 21
    Mobile friendly
  • 19
    Rapid prototyping
  • 14
    Great security
  • 12
    Automatic scaling
  • 11
    Freakingly awesome
  • 8
    Super fast development
  • 8
    Angularfire is an amazing addition!
  • 8
    Chat
  • 6
    Firebase hosting
  • 6
    Built in user auth/oauth
  • 6
    Awesome next-gen backend
  • 6
    Ios adaptor
  • 4
    Speed of light
  • 4
    Very easy to use
  • 3
    Great
  • 3
    It's made development super fast
  • 3
    Brilliant for startups
  • 2
    Free hosting
  • 2
    Cloud functions
  • 2
    JS Offline and Sync suport
  • 2
    Low battery consumption
  • 2
    .net
  • 2
    The concurrent updates create a great experience
  • 2
    Push notification
  • 2
    I can quickly create static web apps with no backend
  • 2
    Great all-round functionality
  • 2
    Free authentication solution
  • 1
    Easy Reactjs integration
  • 1
    Google's support
  • 1
    Free SSL
  • 1
    CDN & cache out of the box
  • 1
    Easy to use
  • 1
    Large
  • 1
    Faster workflow
  • 1
    Serverless
  • 1
    Good Free Limits
  • 1
    Simple and easy
CONS OF FIREBASE
  • 31
    Can become expensive
  • 16
    No open source, you depend on external company
  • 15
    Scalability is not infinite
  • 9
    Not Flexible Enough
  • 7
    Cant filter queries
  • 3
    Very unstable server
  • 3
    No Relational Data
  • 2
    Too many errors
  • 2
    No offline sync

related Firebase posts

Stephen Gheysens
Lead Solutions Engineer at Inscribe · | 14 upvotes · 1.8M views

Hi Otensia! I'd definitely recommend using the skills you've already got and building with JavaScript is a smart way to go these days. Most platform services have JavaScript/Node SDKs or NPM packages, many serverless platforms support Node in case you need to write any backend logic, and JavaScript is incredibly popular - meaning it will be easy to hire for, should you ever need to.

My advice would be "don't reinvent the wheel". If you already have a skill set that will work well to solve the problem at hand, and you don't need it for any other projects, don't spend the time jumping into a new language. If you're looking for an excuse to learn something new, it would be better to invest that time in learning a new platform/tool that compliments your knowledge of JavaScript. For this project, I might recommend using Netlify, Vercel, or Google Firebase to quickly and easily deploy your web app. If you need to add user authentication, there are great examples out there for Firebase Authentication, Auth0, or even Magic (a newcomer on the Auth scene, but very user friendly). All of these services work very well with a JavaScript-based application.

See more
Eugene Cheah

For inboxkitten.com, an opensource disposable email service;

We migrated our serverless workload from Cloud Functions for Firebase to CloudFlare workers, taking advantage of the lower cost and faster-performing edge computing of Cloudflare network. Made possible due to our extremely low CPU and RAM overhead of our serverless functions.

If I were to summarize the limitation of Cloudflare (as oppose to firebase/gcp functions), it would be ...

  1. <5ms CPU time limit
  2. Incompatible with express.js
  3. one script limitation per domain

Limitations our workload is able to conform with (YMMV)

For hosting of static files, we migrated from Firebase to CommonsHost

More details on the trade-off in between both serverless providers is in the article

See more
Pusher logo

Pusher

608
1.4K
234
Hosted APIs to build realtime apps with less code
608
1.4K
+ 1
234
PROS OF PUSHER
  • 55
    An easy way to give customers realtime features
  • 40
    Websockets
  • 34
    Simple
  • 27
    Easy to get started with
  • 25
    Free plan
  • 12
    Heroku Add-on
  • 11
    Easy and fast to configure and to understand
  • 9
    JSON
  • 6
    Happy
  • 6
    Azure Add-on
  • 5
    Support
  • 4
    Push notification
CONS OF PUSHER
  • 11
    Costly

related Pusher posts

Which messaging service (Pusher vs. PubNub vs. Google Cloud Pub/Sub) to use for IoT?

See more
Kirill Shirinkin
Cloud and DevOps Consultant at mkdev · | 3 upvotes · 474.5K views
Shared insights
on
MattermostMattermostPusherPusherTwilioTwilio
at

Recently we finished long research on chat tool for our students and mentors. In the end we picked Mattermost Team Edition as the cheapest and most feature complete option. We did consider building everything from scratch and use something like Pusher or Twilio on a backend, but then we would have to implement all the desktop and mobile clients and all the features oursevles. Mattermost gave us flexible API, lots of built in or easy to install integrations and future-proof feature set. We are still integrating it with our main platform but so far the team, existing mentors and students are very happy.

See more
RabbitMQ logo

RabbitMQ

21.3K
18.7K
557
Open source multiprotocol messaging broker
21.3K
18.7K
+ 1
557
PROS OF RABBITMQ
  • 235
    It's fast and it works with good metrics/monitoring
  • 80
    Ease of configuration
  • 60
    I like the admin interface
  • 52
    Easy to set-up and start with
  • 22
    Durable
  • 19
    Standard protocols
  • 19
    Intuitive work through python
  • 11
    Written primarily in Erlang
  • 9
    Simply superb
  • 7
    Completeness of messaging patterns
  • 4
    Reliable
  • 4
    Scales to 1 million messages per second
  • 3
    Better than most traditional queue based message broker
  • 3
    Distributed
  • 3
    Supports MQTT
  • 3
    Supports AMQP
  • 2
    Clear documentation with different scripting language
  • 2
    Better routing system
  • 2
    Inubit Integration
  • 2
    Great ui
  • 2
    High performance
  • 2
    Reliability
  • 2
    Open-source
  • 2
    Runs on Open Telecom Platform
  • 2
    Clusterable
  • 2
    Delayed messages
  • 1
    Supports Streams
  • 1
    Supports STOMP
  • 1
    Supports JMS
CONS OF RABBITMQ
  • 9
    Too complicated cluster/HA config and management
  • 6
    Needs Erlang runtime. Need ops good with Erlang runtime
  • 5
    Configuration must be done first, not by your code
  • 4
    Slow

related RabbitMQ posts

James Cunningham
Operations Engineer at Sentry · | 18 upvotes · 1.8M views
Shared insights
on
CeleryCeleryRabbitMQRabbitMQ
at

As Sentry runs throughout the day, there are about 50 different offline tasks that we execute—anything from “process this event, pretty please” to “send all of these cool people some emails.” There are some that we execute once a day and some that execute thousands per second.

Managing this variety requires a reliably high-throughput message-passing technology. We use Celery's RabbitMQ implementation, and we stumbled upon a great feature called Federation that allows us to partition our task queue across any number of RabbitMQ servers and gives us the confidence that, if any single server gets backlogged, others will pitch in and distribute some of the backlogged tasks to their consumers.

#MessageQueue

See more

Around the time of their Series A, Pinterest’s stack included Python and Django, with Tornado and Node.js as web servers. Memcached / Membase and Redis handled caching, with RabbitMQ handling queueing. Nginx, HAproxy and Varnish managed static-delivery and load-balancing, with persistent data storage handled by MySQL.

See more
WebRTC logo

WebRTC

322
531
6
A free, open project that provides browsers and mobile applications with Real-Time Communications
322
531
+ 1
6
PROS OF WEBRTC
  • 3
    OpenSource
  • 2
    No Download
  • 1
    You can write anything around it, because it's a protoc
CONS OF WEBRTC
    Be the first to leave a con

    related WebRTC posts

    Hello. So, I wanted to make a decision on whether to use WebRTC or Amazon Chime for a conference call (meeting). My plan is to build an app with features like video broadcasting, and the ability for all the participants to talk and chat. I have used Agora's web SDK for video broadcasting, and Socket.IO for chat features. As I read the comparison between Amazon Chime and WebRTC, it further intrigues me on what I should use given my scenario? Is there any way that so many related technologies could be a hindrance to the other? Any advice would be appreciated. Thanks. Ritwik Neema

    See more
    joseph zeiad

    I am trying to implement video calling in a React Native app through Amazon Kinesis. But I was unlucky to find anything related to this on the web. Do you have any example code I can use? or any tutorial? If not, how easy is it to bridge the native library to RN? And what should I use WebRTC or Amazon Chime?? Thanks

    See more
    MQTT logo

    MQTT

    613
    571
    7
    A machine-to-machine Internet of Things connectivity protocol
    613
    571
    + 1
    7
    PROS OF MQTT
    • 3
      Varying levels of Quality of Service to fit a range of
    • 2
      Lightweight with a relatively small data footprint
    • 2
      Very easy to configure and use with open source tools
    CONS OF MQTT
    • 1
      Easy to configure in an unsecure manner

    related MQTT posts

    Kindly suggest the best tool for generating 10Mn+ concurrent user load. The tool must support MQTT traffic, REST API, support to interfaces such as Kafka, websockets, persistence HTTP connection, auth type support to assess the support /coverage.

    The tool can be integrated into CI pipelines like Azure Pipelines, GitHub, and Jenkins.

    See more
    Shared insights
    on
    MQTTMQTTReductStoreReductStore

    You can use ReductStore to keep a history of MQTT messages by using its Client SDKs. This can be useful if you use a binary format for your data and it can be recorded in a classical TSDB. You can set a FIFO quota for a bucket in your ReductStore instance so that the database removes old MQTT messages when the limit is reached.

    See more
    gRPC logo

    gRPC

    2.2K
    1.4K
    63
    A high performance, open-source universal RPC framework
    2.2K
    1.4K
    + 1
    63
    PROS OF GRPC
    • 24
      Higth performance
    • 15
      The future of API
    • 13
      Easy setup
    • 5
      Contract-based
    • 4
      Polyglot
    • 2
      Garbage
    CONS OF GRPC
      Be the first to leave a con

      related gRPC posts

      Noah Zoschke
      Engineering Manager at Segment · | 30 upvotes · 302.8K views

      We just launched the Segment Config API (try it out for yourself here) — a set of public REST APIs that enable you to manage your Segment configuration. Behind the scenes the Config API is built with Go , GRPC and Envoy.

      At Segment, we build new services in Go by default. The language is simple so new team members quickly ramp up on a codebase. The tool chain is fast so developers get immediate feedback when they break code, tests or integrations with other systems. The runtime is fast so it performs great at scale.

      For the newest round of APIs we adopted the GRPC service #framework.

      The Protocol Buffer service definition language makes it easy to design type-safe and consistent APIs, thanks to ecosystem tools like the Google API Design Guide for API standards, uber/prototool for formatting and linting .protos and lyft/protoc-gen-validate for defining field validations, and grpc-gateway for defining REST mapping.

      With a well designed .proto, its easy to generate a Go server interface and a TypeScript client, providing type-safe RPC between languages.

      For the API gateway and RPC we adopted the Envoy service proxy.

      The internet-facing segmentapis.com endpoint is an Envoy front proxy that rate-limits and authenticates every request. It then transcodes a #REST / #JSON request to an upstream GRPC request. The upstream GRPC servers are running an Envoy sidecar configured for Datadog stats.

      The result is API #security , #reliability and consistent #observability through Envoy configuration, not code.

      We experimented with Swagger service definitions, but the spec is sprawling and the generated clients and server stubs leave a lot to be desired. GRPC and .proto and the Go implementation feels better designed and implemented. Thanks to the GRPC tooling and ecosystem you can generate Swagger from .protos, but it’s effectively impossible to go the other way.

      See more
      Dylan Krupp
      Shared insights
      on
      gRPCgRPCGraphQLGraphQL

      I used GraphQL extensively at a previous employer a few years ago and really appreciated the data-driven schema etc alongside the many other benefits it provided. At that time, it seemed like it was set to replace RESTful APIs and many companies were adopting it.

      However, as of late, it seems like interest has been waning for GraphQL as opposed to increasing as I had assumed it would. Am I missing something here? What is the current perspective regarding this technology?

      Currently, I'm working with gRPC and was curious as to the state of everything now.

      See more
      WCF logo

      WCF

      126
      106
      5
      A runtime and a set of APIs for building connected, service-oriented applications
      126
      106
      + 1
      5
      PROS OF WCF
      • 5
        Classes
      CONS OF WCF
        Be the first to leave a con

        related WCF posts

        Kafka logo

        Kafka

        23.5K
        22K
        607
        Distributed, fault tolerant, high throughput pub-sub messaging system
        23.5K
        22K
        + 1
        607
        PROS OF KAFKA
        • 126
          High-throughput
        • 119
          Distributed
        • 92
          Scalable
        • 86
          High-Performance
        • 66
          Durable
        • 38
          Publish-Subscribe
        • 19
          Simple-to-use
        • 18
          Open source
        • 12
          Written in Scala and java. Runs on JVM
        • 9
          Message broker + Streaming system
        • 4
          KSQL
        • 4
          Avro schema integration
        • 4
          Robust
        • 3
          Suport Multiple clients
        • 2
          Extremely good parallelism constructs
        • 2
          Partioned, replayable log
        • 1
          Simple publisher / multi-subscriber model
        • 1
          Fun
        • 1
          Flexible
        CONS OF KAFKA
        • 32
          Non-Java clients are second-class citizens
        • 29
          Needs Zookeeper
        • 9
          Operational difficulties
        • 5
          Terrible Packaging

        related Kafka posts

        Nick Rockwell
        SVP, Engineering at Fastly · | 46 upvotes · 4.1M views

        When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

        So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

        React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

        Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

        See more
        Ashish Singh
        Tech Lead, Big Data Platform at Pinterest · | 38 upvotes · 3.3M views

        To provide employees with the critical need of interactive querying, we’ve worked with Presto, an open-source distributed SQL query engine, over the years. Operating Presto at Pinterest’s scale has involved resolving quite a few challenges like, supporting deeply nested and huge thrift schemas, slow/ bad worker detection and remediation, auto-scaling cluster, graceful cluster shutdown and impersonation support for ldap authenticator.

        Our infrastructure is built on top of Amazon EC2 and we leverage Amazon S3 for storing our data. This separates compute and storage layers, and allows multiple compute clusters to share the S3 data.

        We have hundreds of petabytes of data and tens of thousands of Apache Hive tables. Our Presto clusters are comprised of a fleet of 450 r4.8xl EC2 instances. Presto clusters together have over 100 TBs of memory and 14K vcpu cores. Within Pinterest, we have close to more than 1,000 monthly active users (out of total 1,600+ Pinterest employees) using Presto, who run about 400K queries on these clusters per month.

        Each query submitted to Presto cluster is logged to a Kafka topic via Singer. Singer is a logging agent built at Pinterest and we talked about it in a previous post. Each query is logged when it is submitted and when it finishes. When a Presto cluster crashes, we will have query submitted events without corresponding query finished events. These events enable us to capture the effect of cluster crashes over time.

        Each Presto cluster at Pinterest has workers on a mix of dedicated AWS EC2 instances and Kubernetes pods. Kubernetes platform provides us with the capability to add and remove workers from a Presto cluster very quickly. The best-case latency on bringing up a new worker on Kubernetes is less than a minute. However, when the Kubernetes cluster itself is out of resources and needs to scale up, it can take up to ten minutes. Some other advantages of deploying on Kubernetes platform is that our Presto deployment becomes agnostic of cloud vendor, instance types, OS, etc.

        #BigData #AWS #DataScience #DataEngineering

        See more