Извините, если на этот вопрос ответили - я не смог найти полный ответ - так как, кажется, есть конфликтующие ресурсы.
То, чего я пытаюсь достичь, - это архитектура, в которой мой бэкэнд «общается» в реальном времени с миллионами клиентов через БД Firebase (RTD или FS). Вроде того, что нарисовано здесь:
Архитектура в двух словах: миллионы клиентов записывают «события» в БД Firebase, мой java-сервер прослушивает эти «события», обрабатывает их и записывает «ответы» в БД Firebase, которые синхронизируются с клиентами.
Вопрос: является ли App Engine лучшим решением? Это даже подходит для работы?
С одной стороны, в документации App Engine есть пример, используемый таким образом:
https://cloud.google.com/solutions/mobile/mobile-firebase-app-engine-flexible
С другой стороны, существуют (на первый взгляд) известные проблемы с этим подходом:
1) Экземпляры App Engine просыпаются при запросах http, а не при событиях firebase. https://stackoverflow.com/a/38357458/1806956
У заданий есть тайм-аут, поэтому, даже если мы выполняем пробуждение cron каждую минуту, это не гарантирует (или делает ли это?), Что слушатель будет жить вечно.
2) App Engine не поддерживает Firebase Admin SDK из-за фоновых потоков? https://stackoverflow.com/a/45046605/1806956
3) App Engine ограничивает количество фоновых потоков. В реальном приложении мы говорим о потенциальных тысячах одновременно работающих пользователей, все события которых вызываются ...
Вышеуказанные проблемы не обновляются? Спасибо ...