
PubNub Platform Services
Reliable Messaging with Integrated Features
Saved Us Countless Dev Weeks on Server-Push Solutions
It Just Works: Reliable and Does What We Need
Reliable Platform with Reasonable Pricing and Standout Support
Easy to Use, Reliable Performance
Reliable Instant Messaging with Easy Integration
Reliable Real-Time Communication with Some Limitations
Real-time alerts have transformed how technicians connect instantly with home service requests
What is our primary use case?
PubNub is a real-time messaging and event streaming platform that we use in an application where users can raise complaints about problems in their homes. All real-time technicians available at that time receive push notifications on their phones or real-time messages indicating an open complaint, and they can accept it immediately. When one message needs to be sent to multiple people, we use PubNub.
We have channels in PubNub where users can publish requests. For example, when I need a technician in my home, I immediately publish a message to a PubNub channel. All subscribers, such as all technicians available in the market, consume the message from that particular channel so that everyone receives the real-time message without any latency. PubNub can also be used for chat and messaging applications. We use it to see how many technicians are available in the market at any given time, which is an online and offline status feature. We are using the Python SDK to handle PubNub functionality.
The client publishes a message to a channel whenever a person needs a technician. PubNub instantly delivers it to all clients subscribed to that channel. Suppose there are 10 million users or technicians; it immediately delivers the particular message to all subscribers, connecting the user in milliseconds even without refreshing the app. There is a direct link available between the technician and the customer.
What is most valuable?
The fast implementation allows us to easily implement PubNub in our application without any problems. PubNub has available SDKs in multiple languages, and it is very easy to implement in the application. The documentation is quite simple and easy to understand. Auto-scaling can handle millions of concurrent connections, unlike the problems we see in WebSocket connection management. I have not seen any problems with PubNub in this regard. It also stores previous messages so that no message is lost. If I send a message and the person is not available at that time, whenever they come online, it will immediately fetch the message. It has a message history feature for storing and retrieving previous messages. Regarding security, it provides access management in three ways: user management, channel-based security, and group roles.
The fast auto-scaling and fast implementation are the best features in my daily work because users usually face problems with connection management in WebSocket. With PubNub, we do not need to worry about it at all.
PubNub has positively impacted my organization by reducing implementation time and developers' work. If we were using something else like WebSocket instead of PubNub, we would need our own infrastructure to manage live connections and to check whether the connection is lost or not. With PubNub, it is very easy to implement, enabling fast development. It has reduced the developers' time by 40-50%.
What needs improvement?
Regarding PubNub improvements, we do not have any control over infrastructure, network configuration, or internal message routing. Sometimes a company needs these aspects as well. They may want a network configuration where messages are stored or internal message routing for how messages route between channels and users. PubNub completely manages this. PubNub could consider offering an optional setup in the future for users who want to manage these aspects themselves.
For how long have I used the solution?
I have been using PubNub for around four years.
What do I think about the stability of the solution?
PubNub is stable.
What do I think about the scalability of the solution?
PubNub allows scalability. I have seen it support 10 million concurrent users from my own experience, and it works fine without any latency or issues.
How are customer service and support?
I have not had a chance to connect with customer support, but I find the documentation and SDKs to be very good, easy to implement, and detailed.
Which solution did I use previously and why did I switch?
I have previously used Kafka, but it has a different use case as it is a message broker. For our use case, PubNub is a better choice because it allows one subscriber and millions of consumers, which is essential.
How was the initial setup?
The setup cost is very low. Regarding pricing, when the data scales, the pricing increases gradually, but PubNub does not charge much in the initial phase.
What was our ROI?
We see a return on investment with time saved for developers, and the user experience increases. While we do not have a specific metric for user experience, we have saved around 40% of the development time because without PubNub, we would have to manage connections ourselves if we were using WebSockets. PubNub handles everything and allows fast implementation and development.
What's my experience with pricing, setup cost, and licensing?
The setup cost is very low. Regarding pricing, when the data scales, the pricing increases gradually, but PubNub does not charge much in the initial phase.
Which other solutions did I evaluate?
We have evaluated other options like RabbitMQ and Apache Kafka, but we stuck with PubNub because it does not charge much in the initial phase and is very easy to implement.
What other advice do I have?
I would advise others to use PubNub if they want quick real-time communication, do not want to manage WebSocket or infrastructure, and need global scalability. If your team is small and wants faster development, then go for PubNub. I do not see any need for improvement; it is totally the best.
Regarding PubNub's security, it provides three levels of security: user-level, group-level, and channel-level. No person who does not have access to a channel can subscribe to that channel or see its messages. The security is totally good and secure. It also provides end-to-end encryption support, secure TLS connections, role-based permissions, and token-based authorization.
I gave PubNub a rating of nine out of ten because of the many features discussed, but I deducted one point because the cost increases with scale. If there are millions of users, like 10 million concurrent users, the cost will gradually increase. Additionally, PubNub does not give us control over infrastructure, network configuration, and internal message routing, which also contributed to the deduction.
Live chat has worked well for mobile users but offline channel subscriptions still need improvement
What is our primary use case?
We are mostly using PubNub for payload sending and for live chat. We are a mobile-based application with an admin side, so it's a live chat application. Whenever a user comes online or offline or sends a live chat request to someone or a message, we use PubNub for that.
How has it helped my organization?
If we had implemented all of this on our own, we would have had to hire at least 50 more employees for that, so we are very happy with PubNub and we have saved a lot of time. We only have to integrate it and all of the other things are done by PubNub, so that's the best part for us.
What is most valuable?
The channel subscription or publish-subscribe function is valuable to us because we can publish on a channel and all of the live users who are using our application can listen to that channel and the payload is received at their end, so that's the best part.
This is our application's main feature and it's working great. If we had implemented all of this on our own, we would have had to hire at least 50 more employees for that, so we are very happy with PubNub and we have saved a lot of time. We only have to integrate it and all of the other things are done by PubNub, so that's the best part for us.
What needs improvement?
The subscription and the SDK part can be improved.
If the client is offline and the application is killed, and the user comes back again, sometimes the subscription to the channel is missed, so that needs to be improved at the SDK level.
Most of the working of our application is working on it and we are happy with it, but there are some parts at the SDK level and the subscription level that we are not happy with it.
For how long have I used the solution?
I have been using PubNub for about three years.
What do I think about the stability of the solution?
There are no positive or negative impacts right now, but most of the time we are not dealing with the payload receiving or sending problems. Most of the time there are some instances at the load peak hours or sometimes payload is missed by the application or SDK at the SDK level. Other than that, most of the time we are very satisfied with PubNub.
Most of the peak hours time there are no specific use cases for that, but we receive complaints from the client about three to ten times a week that payload is missed or the chat is stuck, and the user tried to live chat but was unable to. In most of the cases, either the client is unsubscribed from the channel or there is some slow internet connectivity issue or something like that and PubNub just failed at that point.
How are customer service and support?
It was easy, and there was a time when we had an issue with the pricing, but with their support we have covered it mostly. We were trying to do something that we shouldn't have done with the subscription and the creation of the sending messages and payload, so we have updated it with the help of their support.
It's good and it has helped us in managing our issues a few of the times, so we are happy with that.
Which solution did I use previously and why did I switch?
There are ones such as Firebase Live Database, but the cost of that was more than PubNub and the workarounds for the developer were more, so we have gone with PubNub.
What other advice do I have?
Depending on the application, if you want to use PubNub, it's one of the best options right now available. I would rate this product a 7 out of 10.
Secure chat for doctors and patients has reduced build time but still needs better cost control
What is our primary use case?
PubNub was primarily used in my application for chat purposes, where I needed to create a custom one-to-one chat between two users, specifically a doctor and a patient.
I installed PubNub using the NPM package in my project. After installation, I needed to configure it and create an account at the PubNub site so that I could manage credentials for my application and manage the history through their platform.
For implementation, I installed the NPM package and then created an account to obtain the required access credentials and API key for project configuration. Once this was complete, PubNub provided basic methods such as retrieving the last chat history for a user and the last ten messages. Since a doctor could talk to multiple users at a time, I created a chat application that displayed the most recent chats and the last message. I implemented subscriptions for each user so that whenever a new message arrived for a doctor from any case, it would move to the top. I used PubNub methods to accomplish this, utilizing the subscription key and related features.
What is most valuable?
PubNub is a paid application, and the free version offers limited features. The great features include chat encryption, HIPAA compliance, and comprehensive management capabilities. These are valuable features for a production-ready application when you are prepared to pay for them. Overall, PubNub has performed well with encryption and managing chats, including the ability to manage chat history retention periods and obtain subscriptions.
HIPAA compliance was critical for my application since it operates in the healthcare industry and must follow HIPAA requirements. We opted for the paid mode of PubNub to ensure these compliances are present in our application. Regarding subscription capabilities, the SDK provided through the NPM package offers built-in methods to fetch history and other functions. I used these methods and created a subscription for each user.
PubNub saves development time because we do not have to create a complete chat backend and frontend from scratch. We can implement a plug-and-play approach where the logic is mostly ready. We only need to create wrappers on top of that functionality and customize cases according to our specific use cases. This approach saves time, effort, and money for the company.
What needs improvement?
One area for improvement would be optimizing resource consumption and reducing message size in the paid version, as this can directly affect your billing.
Since PubNub is a paid library, it may not be useful for everyone. As I mentioned, optimizing resource consumption is important. When building for large-scale purposes, there are limits on the number of channels and message size can be substantial, which can result in a hefty bill amount.
For how long have I used the solution?
I have been using PubNub for my applications for more than one year.
What was our ROI?
Regarding development time, we were able to provide a proof of concept and integrate a production-ready app within a maximum of one week. If we had built it from scratch, it would have obviously taken us around six months to deliver a production-ready application. Even after that timeframe, there could be some edge cases that might have been overlooked. Considering compliances, that is another time-consuming process when you must follow different regulations. If building from scratch, you would need to design it so that it could be extended to other use cases as well. PubNub directly reduced that time. Regarding cost, while the company is primarily inclined toward that consideration, it saves considerable money for our client.
What other advice do I have?
I have not used artificial intelligence with PubNub at this time, but I am confident that as we develop in a world where artificial intelligence is a fundamental consideration that everyone seeks to integrate into their applications, PubNub would perform well once integrated with artificial intelligence. The accuracy and reliability of the output would also increase with that integration.
I recommend that people using PubNub keep messages under a few kilobytes. Do not send large files or images directly through channels and groups, and throttle high-frequency events such as games or typing indicators to one per second.
As I mentioned, PubNub implements all types of encryption while storing data in the databases and messages. It is already secure and follows compliance standards, so it aligns with governance rules.
My review rating for PubNub is seven out of ten.