Как ограничения на использование Google Geocoding API применяются к [Sales]force.com?

Ниже приведены ограничения на использование, указанные Google на страницах руководства для разработчиков:

  • Google Maps JavaScript API v3 => Коммерческим веб-сайтам разрешено генерировать до 25 000 загрузок карт в день.
  • Google Geocoding API => при условии ограничения количества запросов геолокации в 2500 в день.
  • Google Maps API для бизнеса => может выполнять до 100 000 запросов в день.

Я пытаюсь оценить использование любого из вышеперечисленных для использования с Visualforce на платформе Salesforce.com (SFDC) [*]

Я понимаю, что для общедоступного веб-сайта запросы по IP. Что касается SFDC, на одном сервере может быть много разных организаций (скажем, NA1). Таким образом, две разные компании, использующие SFDC и Google Maps API, могут иметь URL-адрес https://na1.salesforce.com/something_here и их запросы следует учитывать отдельно.

Будет ли это так? Что произойдет в случае каждого API?

[*]SFDC — это облако SaaS для целей нашего обсуждения. Все пользователи входят в систему через одну и ту же страницу, но они могут быть зарегистрированы в разных «организациях»/«организациях», но их URL-адреса могут выглядеть одинаково.


person Vid L    schedule 12.04.2012    source источник


Ответы (2)


Здесь важно различать ограничения на стороне сервера и на стороне клиента. Для api геокодирования на стороне сервера будет применяться ограничение 2500 для общего экземпляра Salesforce. в зависимости от того, сколько машин поступают запросы (я предполагаю, что NA1 не является 1 огромным сервером). Несколько организаций, использующих бесплатный API геокодирования, будут иметь одинаковый предел геокодирования на стороне сервера. На самом деле я столкнулся с теми же ограничениями, используя собственную платформу Google App Engine, где множество приложений используют один и тот же исходящий IP-адрес.

Для любой гарантированной производительности вам нужно будет отправлять запросы с вашего собственного сервера или использовать маршрут Maps for Business, который позволяет вам аутентифицировать ваши запросы, чтобы получить эти более высокие ограничения.

геокодирование на стороне клиента через JavaScript API не имеет этих ограничений сервера, поэтому, если пользователи предпринимают какие-либо действия для активации геокода или двух, использование JS API является лучшим маршрутом.

Вы уже можете создать свою собственную «корзину» для отслеживания 25 000 загрузок карт в день, подписавшись на ключ API.

person bamnet    schedule 13.04.2012
comment
к сожалению, na1 огромен. наверное самый большой! Кроме того, геокодирование на стороне сервера имеет свои преимущества для моего приложения, но тогда оно имеет более жесткие ограничения. - person Vid L; 13.04.2012

Этот вопрос о SO касается API геокодирования, который конкретно запускается со страницы visualforce напрямую, Salesforce: Google отображает статус запроса 620 G_GEO_TOO_MANY_QUERIES, и это, похоже, означает, что без ключа ограничения являются общими. Я подозреваю, что если вы не планируете отдавать приложение, над которым работаете, вам в значительной степени придется получить обновленный ключ API. Одна вещь, на которую вы, возможно, захотите обратить внимание, чтобы обойти это, — это размещение части карт в другом месте и ее iframe в Salesforce.

person javram    schedule 12.04.2012
comment
Хостинг в другом месте и iframe не будут приемлемым решением. Из обсуждений вопроса, который вы связали, я склонен думать, что он разделяется - person Vid L; 13.04.2012
comment
Ключ API может быть «ключом», возможно, мы сделаем это настраиваемой настройкой. - person Vid L; 13.04.2012
comment
Сейчас немного устарело, но я нашел соответствующую часть документации для этого: developers.google.com/ maps/articles/geocodestrat ... многие инфраструктуры облачных вычислений, такие как Google App Engine или Amazon Web Services, используют общие IP-адреса для разных приложений. Ваши запросы могут выходить за пределы квоты, используемой другими приложениями, полностью не зависящими от вас. - person javram; 20.04.2012