Alternatives to PubNub logo

Alternatives to PubNub

Pusher, Socket.IO, SendBird, Stream, and Kafka are the most popular alternatives and competitors to PubNub.
236
456
+ 1
238

What is PubNub and what are its top alternatives?

PubNub is a real-time Data Stream Network (DSN) that provides scalable messaging for web, mobile, and IoT applications. Its key features include low-latency communication, push notifications, presence detection, stream analytics, and messaging history. However, PubNub can be expensive for high usage scenarios, has limited message size, and lacks full control over data residency and compliance.

  1. Firebase: Firebase, owned by Google, offers real-time database, authentication, and hosting services. It provides real-time synchronization, offline support, and robust security features. Pros include integration with Google services and Firebase's easy-to-use interfaces. However, Firebase may have limitations in scalability for very large applications.

  2. Pusher: Pusher is a hosted service that enables developers to add real-time functionalities to their applications. It offers channels, events, and presence features for real-time communication. Pros include easy setup and comprehensive documentation. However, Pusher may be cost-prohibitive for high message volume.

  3. Socket.io: Socket.io is a JavaScript library for real-time web applications. It enables bidirectional communication between clients and servers through websockets. Key features include event-driven architecture and room support. Pros of Socket.io include its adaptability and ease of use. However, it may not be as scalable as other solutions.

  4. AWS IoT Core: Amazon Web Services (AWS) IoT Core is a managed cloud platform that enables devices to connect with cloud applications reliably and securely. It offers device management, data processing, and rules engine. Pros include integration with other AWS services and robust security features. However, AWS IoT Core may have a steeper learning curve.

  5. SignalR: SignalR is a library for ASP.NET developers to add real-time web functionality to their applications. It supports WebSockets, Server-Sent Events, and long polling. Pros include seamless integration with ASP.NET and ease of scaling. However, SignalR may be limited in features compared to other solutions.

  6. Meteor: Meteor is a full-stack platform for developing web and mobile applications in pure JavaScript. It includes real-time updates, data synchronization, and hot code push. Pros of Meteor include rapid prototyping and cross-platform development. However, Meteor may have performance issues with very large applications.

  7. RabbitMQ: RabbitMQ is an open-source message broker software that implements the Advanced Message Queuing Protocol (AMQP). It allows for reliable messaging between systems and applications. Pros include flexibility in routing messages and high availability. However, RabbitMQ may require more configuration and maintenance.

  8. Kafka: Apache Kafka is an open-source distributed event streaming platform used for building real-time data pipelines and streaming applications. It provides fault tolerance, high throughput, and scalability. Pros include horizontal scalability and durability of messages. However, Kafka may have a steeper learning curve.

  9. Ably: Ably is a real-time data delivery platform that offers Pub/Sub messaging, presence detection, and message history. It provides global edge messaging, guaranteed message delivery, and reactive programming libraries. Pros include low-latency messaging and robust infrastructure. However, Ably may have limited integrations compared to other solutions.

  10. NATS: NATS is a lightweight and high-performance messaging system for cloud native applications. It offers publish-subscribe messaging, request-reply messaging, and scaling capabilities. Pros include simplicity of design and high performance. However, NATS may lack some advanced features present in other solutions.

Top Alternatives to PubNub

  • Pusher
    Pusher

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

  • Socket.IO
    Socket.IO

    It enables real-time bidirectional event-based communication. It works on every platform, browser or device, focusing equally on reliability and speed. ...

  • SendBird
    SendBird

    SendBird is a Messaging SDK, Chat API, and fully managed chat infrastructure for your mobile apps and websites. Embeddable chat for iOS, Android, JavaScript, Unity, .NET. ...

  • Stream
    Stream

    Stream allows you to build scalable feeds, activity streams, and chat. Stream’s simple, yet powerful API’s and SDKs are used by some of the largest and most popular applications for feeds and chat. SDKs available for most popular languages. ...

  • Kafka
    Kafka

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

  • Ably
    Ably

    Ably offers WebSockets, stream resume, history, presence, and managed third-party integrations to make it simple to build, extend, and deliver digital realtime experiences at scale. ...

  • 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. ...

  • Twilio
    Twilio

    Twilio offers developers a powerful API for phone services to make and receive phone calls, and send and receive text messages. Their product allows programmers to more easily integrate various communication methods into their software and programs. ...

PubNub alternatives & related posts

Pusher logo

Pusher

601
1.4K
234
Hosted APIs to build realtime apps with less code
601
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
  • 10
    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 · 471.8K 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
Socket.IO logo

Socket.IO

13K
10.7K
776
Realtime application framework (Node.JS server)
13K
10.7K
+ 1
776
PROS OF SOCKET.IO
  • 219
    Real-time
  • 143
    Node.js
  • 141
    Event-based communication
  • 102
    Open source
  • 102
    WebSockets
  • 26
    Binary streaming
  • 21
    No internet dependency
  • 10
    Large community
  • 6
    Push notification
  • 5
    Ease of access and setup
  • 1
    Test
CONS OF SOCKET.IO
  • 12
    Bad documentation
  • 4
    Githubs that complement it are mostly deprecated
  • 3
    Doesn't work on React Native
  • 2
    Small community
  • 2
    Websocket Errors

related Socket.IO posts

Max Musing
Founder & CEO at BaseDash · | 12 upvotes · 36.1K views

Socket.IO is great for building real-time systems like chat. It's effectively a nice wrapper around WebSockets, with the ability to fallback to other methods for browsers that don't support it. We just used it to implement real-time collaboration at BaseDash, including a chat system like you're looking to build.

Node.js is probably the correct choice, especially if you're already familiar with it You'll probably still need to build an API to send requests to your server, and then use Socket.IO to push messages to your clients. This will let you authenticate users and store messages on your database so you can retrieve them later. PostgreSQL and MongoDB are good options for your database, you should be fine either way. Don't worry about speed, they'll both be sufficient.

React on the front end makes it really simple to handle real-time updating data. Again, even better since you're already familiar.

See more
across_the_grid
Full-stack web developer · | 10 upvotes · 421.5K views
Shared insights
on
Socket.IOSocket.IONode.jsNode.jsExpressJSExpressJS

I use Socket.IO because the application has 2 frontend clients, which need to communicate in real-time. The backend-server handles the communication between these two clients via websockets. Socket.io is very easy to set up in Node.js and ExpressJS.

In the research project, the 1st client shows panoramic videos in a so called cave system (it is the VR setup of our research lab, which consists of three big screens, which are specially arranged, so the user experience the videos more immersive), the 2nd client controls the videos/locations of the 1st client.

See more
SendBird logo

SendBird

138
402
78
A Complete Chat Platform, Messaging and Chat SDK and API
138
402
+ 1
78
PROS OF SENDBIRD
  • 13
    Active support is impressive. (Support for private deve
  • 10
    Pre-built UI for major platforms
  • 10
    Easy to use
  • 8
    Migration API for customers using other chat services
  • 7
    Scalability is awesome
  • 7
    First chat SDK officially supports Xamarin
  • 5
    Because my product guy told me to
  • 5
    Unlimited number of users in public chat
  • 5
    Cool product
  • 4
    Flexible message format ex) json, xml
  • 2
    Out of the box api and features
  • 2
    Intuitive and feature-packed
CONS OF SENDBIRD
  • 2
    Policy on concurrent users leads to overages and overch
  • 2
    Prices ramp up exponentially

related SendBird posts

Shared insights
on
StreamStreamSendBirdSendBirdFlutterFlutter

I am interested in using a chat SDK for a community mobile Flutter app. I am between SendBird and Stream. I currently have 2,000 monthly active users and plan to have close to 5,000 active users chatting on the app. Has anyone used either and had good/bad experiences? Currently, there is no chat functionality, and we would like to have a 1-to-1 user chat, group chat, and large community chat capabilities.

See more
Yeongju Park
SW Web Engineer at Sense Korea · | 4 upvotes · 74.9K views
Shared insights
on
MSSQLMSSQLSendBirdSendBirdCometChatCometChat

I am considering which chat solution to choose between CometChat and SendBird, for our new app. The condition is, the app is going to run in a private network and has to connect with MSSQL. Any advice on other things I have to consider before choosing one, or is there another chat service you would recommend? Thank you!

See more
Stream logo

Stream

216
223
54
Build scalable feeds, activity streams & chat in a few hours instead of months.
216
223
+ 1
54
PROS OF STREAM
  • 18
    Up and running in few minutes
  • 18
    Integrates via easy-to-use REST API
  • 18
    It's easy to setup with the minimum coding
CONS OF STREAM
    Be the first to leave a con

    related Stream posts

    Nick Parsons
    Building cool things on the internet 🛠️ at Stream · | 35 upvotes · 3.5M views

    Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

    We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

    We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

    Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

    #FrameworksFullStack #Languages

    See more
    Vishal Narkhede
    Javascript Developer at getStream.io · | 19 upvotes · 438.7K views

    Recently, the team at Stream published a React Native SDK for our new Chat by Stream product. React Native brings the power of JavaScript to the world of mobile development, making it easy to develop apps for multiple platforms. We decided to publish two different endpoints for the SDK – Expo and React Native (non-expo), to avoid the hurdle and setup of using the Expo library in React Native only projects on the consumer side.

    The capability of style customization is one a large deal breaker for frontend SDKs. To solve this, we decided to use styled-components in our SDK, which makes it easy to add support for themes on top of our existing components. This practice reduces the maintenance effort for stylings of custom components and keeps the overall codebase clean.

    For module bundling, we decided to go with Rollup.js instead of Webpack due to its simplicity and performance in the area of library/module providers. We are using Babel for transpiling code, enabling our team to use JavaScript's next-generation features. Additionally, we are using the React Styleguidist component documentation, which makes documenting the React Native code a breeze.

    See more
    Kafka logo

    Kafka

    23.1K
    21.7K
    607
    Distributed, fault tolerant, high throughput pub-sub messaging system
    23.1K
    21.7K
    + 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 · 3.4M 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 · 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
    Ably logo

    Ably

    55
    95
    74
    The platform to power synchronized digital experiences in realtime, at scale.
    55
    95
    + 1
    74
    PROS OF ABLY
    • 8
      WebSockets
    • 7
      Highly reliable
    • 6
      SSE
    • 6
      Massive scalability
    • 6
      Great technical support
    • 5
      Channel Presence
    • 5
      Free plan
    • 5
      Channel History
    • 5
      Message queueing
    • 5
      Global cloud network of data centers
    • 4
      WebHooks
    • 4
      MQTT
    • 4
      Consistently high performance
    • 4
      Third-party cloud integrations
    CONS OF ABLY
      Be the first to leave a con

      related Ably posts

      Firebase logo

      Firebase

      40.2K
      34.5K
      2K
      The Realtime App Platform
      40.2K
      34.5K
      + 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
      • 18
        Rapid prototyping
      • 14
        Great security
      • 12
        Automatic scaling
      • 11
        Freakingly awesome
      • 8
        Chat
      • 8
        Angularfire is an amazing addition!
      • 8
        Super fast development
      • 6
        Built in user auth/oauth
      • 6
        Firebase hosting
      • 6
        Ios adaptor
      • 6
        Awesome next-gen backend
      • 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

      Johnny Bell

      I was building a personal project that I needed to store items in a real time database. I am more comfortable with my Frontend skills than my backend so I didn't want to spend time building out anything in Ruby or Go.

      I stumbled on Firebase by #Google, and it was really all I needed. It had realtime data, an area for storing file uploads and best of all for the amount of data I needed it was free!

      I built out my application using tools I was familiar with, React for the framework, Redux.js to manage my state across components, and styled-components for the styling.

      Now as this was a project I was just working on in my free time for fun I didn't really want to pay for hosting. I did some research and I found Netlify. I had actually seen them at #ReactRally the year before and deployed a Gatsby site to Netlify already.

      Netlify was very easy to setup and link to my GitHub account you select a repo and pretty much with very little configuration you have a live site that will deploy every time you push to master.

      With the selection of these tools I was able to build out my application, connect it to a realtime database, and deploy to a live environment all with $0 spent.

      If you're looking to build out a small app I suggest giving these tools a go as you can get your idea out into the real world for absolutely no cost.

      See more
      Collins Ogbuzuru
      Front-end dev at Evolve credit · | 16 upvotes · 10.5K views

      Your tech stack is solid for building a real-time messaging project.

      React and React Native are excellent choices for the frontend, especially if you want to have both web and mobile versions of your application share code.

      ExpressJS is an unopinionated framework that affords you the flexibility to use it's features at your term, which is a good start. However, I would recommend you explore Sails.js as well. Sails.js is built on top of Express.js and it provides additional features out of the box, especially the Websocket integration that your project requires.

      Don't forget to set up Graphql codegen, this would improve your dev experience (Add Typescript, if you can too).

      I don't know much about databases but you might want to consider using NO-SQL. I used Firebase real-time db and aws dynamo db on a few of my personal projects and I love they're easy to work with and offer more flexibility for a chat application.

      See more
      Twilio logo

      Twilio

      11.1K
      8.5K
      521
      Bring voice and messaging to your web and mobile applications.
      11.1K
      8.5K
      + 1
      521
      PROS OF TWILIO
      • 148
        Powerful, simple, and well documented api
      • 88
        RESTful API
      • 66
        Clear pricing
      • 61
        Great sms services
      • 58
        Low cost of entry
      • 29
        Global SMS Gateway
      • 14
        Good value
      • 12
        Cloud IVR
      • 11
        Simple
      • 11
        Extremely simple to integrate with rails
      • 6
        Great for startups
      • 5
        SMS
      • 3
        Great developer program
      • 3
        Hassle free
      • 2
        Text me the app pages
      • 1
        New Features constantly rolling out
      • 1
        Many deployment options, from build from scratch to buy
      • 1
        Easy integration
      • 1
        Two factor authentication
      CONS OF TWILIO
      • 4
        Predictable pricing
      • 2
        Expensive

      related Twilio posts

      Tom Klein

      Google Analytics is a great tool to analyze your traffic. To debug our software and ask questions, we love to use Postman and Stack Overflow. Google Drive helps our team to share documents. We're able to build our great products through the APIs by Google Maps, CloudFlare, Stripe, PayPal, Twilio, Let's Encrypt, and TensorFlow.

      See more
      Ravi Sathanapalli
      Director Product Management at Centime · | 6 upvotes · 97.4K views
      Shared insights
      on
      TwilioTwilioAmazon SNSAmazon SNS

      Hi, We are looking to implement 2FA - so that users would be sent a Verification code over their Email and SMS to their phone.

      We faced some limitations with Amazon SNS where we could either send the verification code to email OR to the phone number, while we want to send it to both.

      We also are looking to make the 2FA more flexible by adding any other options later on.

      What are the best alternatives to SNS for this use case and purpose? Looked at Twilio but want to explore other options before making a decision.

      Would be great to know what the experience with Twilio has been, especially the limitations/issues with Twilio...

      Appreciate any input from users of Twilio and others who have had similar use cases.

      See more