App icon indicating copy to clipboard operation
App copied to clipboard

[Performance] Create PING for Pusher Connection

Open muttmuure opened this issue 2 months ago • 4 comments

If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!


What performance issue do we need to solve?

Intermittently, Pusher becomes unreachable for reasons out of our control and the client needs to reconnect to it, which causes delays or failure to get realtime updates to chat data.

We can't count on Pusher's internal PING to detect liveness -- we need our own application layer Pusher-ping.

What is the impact of this on end-users?

A more reliable Pusher-PING means users get realtime updates to their New Expensify data more reliably.

List any benchmarks that show the severity of the issue

This is a recurring issue: https://expensify.slack.com/archives/C05LX9D6E07/p1731299637345689

Proposed solution (if any)

Develop our own application layer Pusher-PING that works in the same way as our existing PING code, but instead tests the Pusher connection.

List any benchmarks after implementing the changes to show impacts of the proposed solution (if any)

Note: These should be the same as the benchmarks collected before any changes.

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • [ ] Android: Native
  • [ ] Android: mWeb Chrome
  • [ ] iOS: Native
  • [ ] iOS: mWeb Safari
  • [ ] MacOS: Chrome / Safari
  • [ ] MacOS: Desktop

Version Number: Reproducible in staging?: Y Reproducible in production?: Y Email or phone of affected tester (no customers): Logs: https://stackoverflow.com/c/expensify/questions/4856 Notes/Photos/Videos: Any additional supporting documentation Expensify/Expensify Issue URL: Issue reported by: @quinthar Slack conversation: https://expensify.slack.com/archives/C05LX9D6E07/p1731299637345689

View all open jobs on Upwork

muttmuure avatar Dec 10 '24 10:12 muttmuure