У меня есть приложение для Android, которое использует Google Cloud Endpoints для синхронизации данных между устройствами. В настоящее время в каждом вызове api сообщение GCM отправляется на все другие устройства. Часто устройства не только выполняют один вызов api, но и несколько сразу после друг друга. В этой ситуации становится крайне неэффективно отправлять сообщение в каждом вызове, потому что тогда все остальные устройства делают несколько вызовов для получения новых данных вместо одного для всех.Объединить несколько сообщений GCM в AppEngine
Так что моя идея в основном после вызова api ~ ~ 10 секунд, а затем отправить сообщение GCM. Всякий раз, когда приходит новый вызов, и таймер сбрасывается.
Моя проблема: я действительно не знаю, как это сделать в AppEngine. Моя первая идея была TaskQueue с задачей, которая называется определенным образом и имеет 10-секундную задержку. В вызове API я проверяю, находится ли задача в очереди, и если да, я удаляю ее и вставляю новую. Это невозможно, потому что имя задачи нельзя использовать снова, даже если задача больше не существует.
Спасибо, что я позволю клиенту сообщить сервер, который является последним. –