PubNub is a global Data Stream Network (DSN) and realtime infrastructure-as-a-service (IaaS) company based in San Francisco, California. The company makes products for software and hardware developers to build realtime web, mobile, and Internet of Things (IoT) applications.
PubNub's primary product is a realtime publish/subscribe messaging API built on their global data stream network which is made up of a replicated network of at least 14 data centers located in North America, South America, Europe, and Asia. The network currently serves over 300 million devices and streams more than 750 billion messages per month.
PubNub was founded in 2010 by Stephen Blum and Todd Greene. PubNub raised $4.5 million in Series A funding from Relay Ventures and TiE Angels in March 2012. They received their $11 million Series B round of funding in September 2013 from Scale Venture Partners, Relay Ventures and TiE Angels. In July 2015, PubNub received their $20 million Series C round of funding led by Sapphire Ventures
- BLOCKS a set of customizable microservices that give developers a simple way to add code and deploy features for realtime apps
- Publish/Subscribe Messaging provides realtime data streaming and device signaling, and includes built in AES encryption and optional TLS/SSL encryption. The atomic components that make up a data stream are API Keys, Messages, and Channels. This feature handles channels in a lightweight manner, allowing software developers to create an unlimited number of channels for any set of API keys without first declaring the channel.
- Online Presence Detection provides tracking of online and offline status of users and devices in realtime. Presence events are triggered when a connected device subscribes or unsubscribes from a channel, or times out. The Presence API also includes a “state” feature allowing for the persistent tracking of any name/value pair a software developer specifies, such as a “typing” event indicator in a basic chat application.
- Access Management provides fine grain read and write access control on a per user, device, or channel basis. This adds an extra layer of security and enables the syndication of streams by providing authorization to individual users, as well as grant/revoke permissions at the channel or key level.
- Data Stream Controller multiplexes individual data streams as a single persistent connection, and it centralizes control of the creation and modification of groups of data channels at the server level.
- Storage & Playback stores messages as they are published to a data channel, and retrieves them from high-availability storage clusters at a later time. Data streams can also be replayed as they were broadcast in realtime.
- Mobile Push Notifications bridges native Pub/Sub Messaging API publishing with 3rd party push notification services including Google Android GCM, Apple iOS APNS, and Microsoft Windows Phone MSNP. The developing, configuring, and maintaining of server side components for 3rd party providers is provided by the PubNub API.