2

I’ve built an app for my clients, and it’s crucial that its notifications are delivered very quickly. During testing, when there were about 5 of us, notifications were instant. But as our user base grew to around 30,000 users, we started noticing serious delays: notifications can now arrive 5, sometimes even 10 minutes late.

Right now, the entire notification system is built using Firebase Cloud Messaging (FCM). I understand that we’re limited to using the OS-level push systems (FCM for Android, APNs for iOS), but I can’t help wondering: how do apps like Telegram achieve such real-time delivery?

For example, when I send a message to a friend on Telegram, even if the app is completely closed and not running in the background, the notification still appears almost instantly.

How can I achieve this same level of speed and reliability in my own app?

Edit: In my current FCM requests, I've already included the highest priority settings:

android.priority = "HIGH" apns-priority: 10 
0

1 Answer 1

1

what i think, you're using FCM for full message delivery, which batches and delays at scale and apps like telegram etc, use FCM only as a "wake-up call," not for message delivery.

You can try with few stpes:

  1. Build a persistent WebSocket connection from your app to your own servers

  2. Send minimal FCM payloads with just a "wake up" signal

  3. When FCM arrives, your app wakes up and instantly fetches the actual message through your fast WebSocket connection

This hybrid approach gives you FCM's universal reach for waking devices, but your own optimized channel for actual message delivery, eliminating the 5-10 minute delays.

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.