firebase-admin-java icon indicating copy to clipboard operation
firebase-admin-java copied to clipboard

Performance of the sendEach, sendEachAsync methods is too slow.

Open honorhs opened this issue 9 months ago • 8 comments

After updating to version 9.2.0 of the firebase-admin-java, I experienced performance issues and had to rollback to a previous version.

The performance of sendEachAsync is several to tens of times slower compared to sendAllAsync. I don't understand why there is a decision to not provide a batch API anymore, forcing a migration to sendEach or sendEachAsync without any alternatives. Shouldn't the SDK be provided at a reasonable level with equivalent performance?

Moreover, it does not even use HTTP/2 connections. Why are all the performance and resource cost issues caused by SDK v9.2.0 passed onto the users?

I believe the batch API should be maintained until an alternative (API) that can match the performance of the existing batch API is developed.

I would like to hear Firebase position on this matter.

honorhs avatar May 02 '24 08:05 honorhs

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

google-oss-bot avatar May 02 '24 08:05 google-oss-bot

same issues: ( and no solution yet ) :) I hope a solution before 20 june 2024 because it is the deadline for old api removal. The solution should be implemented already because developers needs sometimes to implement to their systems. There is less than 2 months.

https://github.com/firebase/firebase-admin-java/issues/834

https://github.com/firebase/firebase-admin-java/issues/849

emindeniz99 avatar May 06 '24 05:05 emindeniz99

For large-scale systems, FCM is now way too expensive for deployment cost after deprecating Batch API. In our scenario, our push notifications are intense and traffic is huge and continuous. With the new API endpoint, we found that the performance is too bad unless we deploy many machines to handle the traffic.

For this issue, I would like to know if the FCM team has any suggestions or not because not every scenario is suitable to use Topic.

raychongtk avatar May 09 '24 13:05 raychongtk

Any update on this performance issue?

jwagun avatar Jun 18 '24 10:06 jwagun

I'm trying to apply new apis but tt has absolutely serious problem of my projects. Compare to legacy, it costs too much seconds to get a response. Please reply any solution except using topic.

Kyupile avatar Jun 18 '24 11:06 Kyupile

We also faced similar situation. We then moved away from firebase-admin-java SDK and have our own implementation where we use HTTP/2 and multiplexing. For now this works for us.

georgeaniljohn avatar Jul 02 '24 14:07 georgeaniljohn

Do you have any update on this? @lahirumaramba @jonathanedey

honorhs avatar Jul 08 '24 12:07 honorhs

Is this issue resolved?

moda666 avatar Aug 22 '24 13:08 moda666

Is this issue resolved?

xiaotuotuo321 avatar Sep 14 '24 10:09 xiaotuotuo321

👍🤗

Mzakimohammed avatar Sep 20 '24 16:09 Mzakimohammed

HTTP/2 support has now been added with the release of v9.4.0. See our wiki for more information on this change.

jonathanedey avatar Oct 09 '24 20:10 jonathanedey