Insights

What is HTTP Long Polling?

3 min read Michael Carroll on Sep 29, 2022
Try PubNub Today

Free up to 1MM monthly messages. No credit card required.

Subscribe to our newsletter

By submitting this form, you are agreeing to our Terms and Conditions and Privacy Policy.

While this post still contains useful knowledge, we have a newer article on this topic available on our Glossary: HTTP Long Polling.


Web applications were originally developed around a client/server model, where the Web client is always the initiator of transactions, requesting data from the server. Thus, there was no mechanism for the server to independently send, or push, data to the client without the client first making a request.

In a Nutshell: HTTP Long Polling

To overcome this deficiency, Web app developers can implement a technique called HTTP long polling, where the client polls the server requesting new information.  The server holds the request open until new data is available. Once available, the server responds and sends the new information. When the client receives the new information, it immediately sends another request, and the operation is repeated. This effectively emulates a server push feature. A simple diagram below:

Considerations for HTTP Long Polling

There are a couple of things to consider when using HTTP long polling to build real-time interactivity in your application, both in terms of developing and operations/scaling.

  • As usage grows, how will you orchestrate your real-time backend?
  • When mobile devices rapidly switch between WiFi and cellular networks or lose connections, and the IP address changes, does long polling automatically re-establish connections?
  • With long polling, can you manage the message queue and catch up missed messages?
  • Does long polling provide load balancing or failover support across multiple servers?

When building a real-time application with HTTP long polling for server push, you’ll have to develop your own communication management system. This means that you’ll be responsible for updating, maintaining, and scaling your backend infrastructure.

Backend Infrastructure for Real-time Functionality

With these considerations in mind, that's where a real-time communication platform like PubNub comes in. PubNub takes care of the backend infrastructure for you, so you don’t have to worry about maintaining and orchestrating your real-time network.

When looking at HTTP long polling with the goal of streaming data, PubNub is a low-latency and low-overhead real-time Web app communication environment, and features the ability to send messages to a single client, client groups and all clients. Upgrading to PubNub is both rapid and easy since PubNub is based on a publish/subscribe model.

Key Benefits of Protocol Agnostic Real-time Messaging

Instead of relying solely on HTTP long polling for real-time messaging, a protocol agnostic approach is beneficial. PubNub automatically chooses the best protocols and frameworks depending on environment, latency, etc. Any server or client code wanting to communicate makes a single API call to publish or subscribe to data channels.

The code is identical between clients and servers, making implementation much simpler than using HTTP long polling. In terms of connection management, the network handles network redundancy, routing topology, loading balancing, failover, and channel access. Additionally, PubNub offers core building blocks for building real-time into your application.

  • Presence – Detect when users enter/leave your app and whether machines are online, for applications like in-app chat.
  • Storage & Playback – Store real-time message streams for future retrieval and playback.
  • Mobile Push Gateway – Manage the complexities of real-time apps on mobile devices, including Push Notifications.
  • Access Management – Fine grain Publish and Subscribe permissions down to person, device or channel, for HIPAA-compliant chat applications or other sensitive use cases.
  • Security – Secure all communications with enterprise-grade encryption standards.
  • Analytics – Leverage visualizations into your real-time data streams.
  • Data Sync – Sync application state across clients in real time, for digital classrooms and multiplayer game development.

More from PubNub

Java WebSocket Programming with Android and Spring Boot
BuildNov 18, 20225 min read

Java WebSocket Programming with Android and Spring Boot

An overview and examples of Java WebSocket programming in Android and Spring Boot.

Michael Carroll

Michael Carroll

NPP and HIPAA: Notice of Privacy Practices Definition
Healthcare CategoryNov 15, 20225 min read

NPP and HIPAA: Notice of Privacy Practices Definition

A Notice of Privacy Practices (NPP) is one of the requirements of HIPAA and helps patients understand their personal data rights.

Michael Carroll

Michael Carroll

How Fast is Real-Time? Human Perception and Technology
InsightsNov 13, 20226 min read

How Fast is Real-Time? Human Perception and Technology

Just how fast is this concept of 'real-time?' How fast can the human mind process input? What about emulating that with...

Michael Carroll

Michael Carroll