firebase / firebase-admin-python

Firebase Admin Python SDK
https://firebase.google.com/docs/admin/setup
Apache License 2.0
1.03k stars 320 forks source link

[FR][FCM] HTTP2 support for sendEach #788

Open Klemenceo opened 6 months ago

Klemenceo commented 6 months ago

Hello,

With the new FCM v1 http endpoints, support for batching was removed. The solution for large volume is now topics (but that leave you with generic messages) and using HTTP2 (just like APNs does) to benefit from multiplexing.

The current implementation uses requests, which doesn't support HTTP2, and uses a ThreadPool as a means of doing concurrent sends, but you still pay for the HTTP layer on each send.

Are there plan to use something like hyperx in the future to switch sendEach to, in order to benefit from http2 multiplexing.

Thanks in advance.

google-oss-bot commented 6 months ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

davidemerritt commented 6 months ago

+1 - this has a pretty urgent timeline with the june 20th deprecation of the existing batch send.

jonathanedey commented 6 months ago

Hi Folks, We are aware of these issues and working to address them.

Currently, support for HTTP/2 in Node.js is underway and our next focus is exploring similar options for Java, Python and the remaining SDKs. We will use this issue to track any progress here.

We can't provide a timeline for the completion of these projects but we are working to have these resolved as soon as we can and appreciate your continued patience as we do so.

davidemerritt commented 6 months ago

Will this be resolved prior to the june 20th cutoff for existing legacy endpoints? This swapover doesn't provide a reasonable migration strategy without this being implemented.

Tom3652 commented 6 months ago

I was going to make the same feature request, glad this is a known issue 🙏🏼

jagerman commented 5 months ago

+1 - this has a pretty urgent timeline with the june 20th deprecation of the existing batch send.

Thankfully Google heard the cries of developers of every single firebase-admin-xyz repository pointing out the problems with the migration and came up with a working solution before the deadline. (Edit: this is sarcasm).

jhkim-grip commented 4 months ago

+1 - this has a pretty urgent timeline with the june 20th deprecation of the existing batch send.

Thankfully Google heard the cries of developers of every single firebase-admin-xyz repository pointing out the problems with the migration and came up with a working solution before the deadline.

@jagerman may i ask what solution is that? i can't find it

jagerman commented 4 months ago

@jagerman may i ask what solution is that? i can't find it

That was sarcasm. As for an actual solution, https://github.com/olucurious/pyfcm is probably the option as Google apparently isn't interested it maintaining their tools.

vivekshah1801 commented 4 months ago

I was going to create the same FR.

dpereiraegoi commented 2 months ago

Any updates?

Jay2109 commented 2 months ago

@jagerman may i ask what solution is that? i can't find it

That was sarcasm. As for an actual solution, https://github.com/olucurious/pyfcm is probably the option as Google apparently isn't interested it maintaining their tools.

So this works ? Has anyone tried this ?

dpereiraegoi commented 1 month ago

This was the worse decision who Google/Firebase made. The service has become much worse, and confidence in the product has worsened. when a decision is made so that the service performs again ?