работа с новыми лимитами создания каналов - PullRequest
2 голосов
/ 01 декабря 2011

Похоже, что в последнее время механизм приложений Google значительно сократил количество бесплатных квот для создания каналов с 8640 до 100 в день.Буду признателен за некоторые предложения по оптимизации создания канала для хобби-проекта, где я не желаю использовать платные планы.

  1. В документах специально упоминается, чтона ID канала может быть только один клиент.Было бы полезно, если бы был способ обойти это, даже если бы это было только для нескольких клиентов на одном компьютере (например, несколько вкладок)

  2. Мне пришло в голову, что я мог бы смоделироватьфункциональность канала путем многократной отправки запросов XHR на сервер для проверки новых сообщений, следовательно, в обход ограничений.Однако я боюсь, что этот метод может быть слишком медленным.Существуют ли какие-либо библиотеки, которые работают по этому принципу?

1 Ответ

5 голосов
/ 01 декабря 2011

Один клиент на канал

К сожалению, не существует простого способа обойти одного клиента на ограничение идентификатора канала. На самом деле мы разрешаем two , но это для случая, когда пользователь обновляет свою страницу, а не для фактического разветвления.

Тем не менее, вы, безусловно, могли бы реализовать свой собственный обходной путь для этого. Одна хитрость, которую я видел, - это использование куки для связи между вкладками браузера. Затем вы можете выбрать одну из вкладок «владелец» канала и раздать данные с помощью куки. См. Этот вопрос для получения информации о том, как реализовать взаимодействие между вкладками: Связь Javascript между вкладками / окнами браузера

Опрос против канала

Можно использовать опрос вместо использования API канала, если вы готовы принять некоторые компромиссы в производительности. Скорость доставки API канала составляет порядка 100-200 мс; если бы вы могли принять в среднем 500 мс, то вы могли бы опрашивать каждую секунду. В зависимости от типа данных, которые вы отправляете, и от того, сколько вы можете уместить в memcache, это может быть осуществимым решением. Я думаю, твоя самая большая проблема - это часы инстанции.

Например, если у вас, скажем, 100 клиентов, вы будете смотреть на 100qps. Вы должны поэкспериментировать и посмотреть, сможете ли вы обслуживать 100 запросов в секунду для данных, которые вам нужно обслуживать, не раскручивая второй экземпляр. Если нет, продолжайте увеличивать время ожидания (т. Е. Уменьшать частоту опроса), пока не получите 1 экземпляр, способный удовлетворить ваши запросы.

Надеюсь, это поможет.

...