Я разрабатываю приложение для чата поверх API канала Google AppEngine, и одна из задач заключается в координации / синхронизации чата при работе в нескольких окнах / вкладках (в одном браузере).
В частности, если у пользователя есть разговор, открытый в одном окне / вкладке, а затем открывающий новое окно / вкладку, которая подключается к моему веб-сайту, я хотел бы, чтобы этот же разговор появился в новом окне / вкладке (это это функциональность чата Facebook и других веб-сайтов). Я считаю, что этого можно достичь, открывая новый канал для каждого окна, которое пользователь открыл, и позволяя серверу обеспечить, чтобы каждый канал имел самые последние данные разговора, но я обеспокоен нарушением ограничения (если есть один) по количеству каналов, разрешенных API-интерфейсом канала, и также обеспокоен эффективностью этого подхода.
Итак, мой вопрос: 1) Имеет ли смысл открывать новый канал для каждого окна / вкладки для одного пользователя с точки зрения эффективности / результативности? 2) Есть ли какое-либо ограничение на количество каналов, которые я могу открыть одному пользователю? 3) есть ли общий лимит на количество каналов, которые я могу открыть? 4) есть ли какой-то другой, более разумный способ достижения моих целей (возможно, с помощью файлов cookie или каким-либо образом разделить данные из одного канала между несколькими окнами / вкладками)?
Спасибо и всего наилучшего
Алекс