6

我们是一家大公司的一个部门,在使用 Google 地图和地理编码 API 时遇到了一个重大问题。问题是我们公司的所有 70 个部门都在同一个 IP 地址后面。因此,印度的客户服务代理似乎与俄亥俄州克利夫兰的开发人员来自同一个 IP 地址,而后者似乎与西欧的部门总裁来自同一个 IP 地址。我们拥有超过 130,000 名员工,经常因为超出 IP 速率限制而被阻止。

除了个人只是浏览碰巧使用带有客户端地理编码请求的谷歌地图的网站之外,任何尝试进行批量地理编码或提供自己的地图显示应用程序的部门都将导致相同的限制!实际上,我们在内部使用自己的 Where To Buy 服务,该服务是公开的 (http://www.ridgid.com/Tools/Where-To-Buy/),为客户提供有关当地经销商的信息。

虽然我们没有遇到 API 限制(至少现在还没有,而且当我们这样做时,我们总是可以购买企业许可证),但我们遇到了 IP 速率限制并且目前没有解决方法。在缓存地理编码结果和减少浪费调用方面,我们已经在遵循最佳实践。值得庆幸的是,这对我们的客户来说不是问题,因为他们与我们公司内的用户不在同一个 IP 上。

问题是我们是否有任何方法可以让 Google 对我们的特定 IP 地址进行例外处理,以改善我们设置的基于 IP 的限制?这确实是谷歌的问题。谢谢你的帮助!

4

6 回答 6

11

拥有数万名员工的公司的部门应该有企业执照。

于 2012-02-27T23:54:29.410 回答
2

如果您使用此处所述的客户端地理编码,我认为没有与 IP 相关的限制:

https://developers.google.com/maps/articles/geocodestrat

通过地理编码 Web 服务进行的服务器端地理编码的配额为每个 IP 每天 2,500 个请求,因此一天内的所有请求都计入配额。此外,Web Service 是有速率限制的,因此过快进入的请求会导致阻塞。

通过浏览器进行的客户端地理编码在每个地图会话中受到速率限制,因此地理编码 > 分布在您的所有用户中,并随您的用户群扩展。

“地图会话”是指每次加载 Javascript 地图 API 时。然而,这可能也有限制,它是否与 IP / 域 / 子域 / URL 相关仍然需要进一步澄清。

而且客户端的“限速”并不意味着每天有配额什么的,我测试过这种方法,一天可以对超过2500个地址进行地理编码。您将不得不考虑并测试“速率限制”是如何工作的,我的观察是它让您立即爆发到大约 10 个地址,然后将您限制为下一个 150 个请求每秒大约 1 个地理编码的速率,进一步请求从同一个“会话”将花费成倍地更长的时间。

于 2012-12-19T07:50:01.210 回答
0

如果您只进行正向地理编码,我建议您尝试 GeocodeFarm。前几天我刚收到他们的一封电子邮件,说他们也将很快开始发布“反向”地理编码,并且他们仍在解决问题。也许这会对您有所帮助,因为他们没有请求速率限制,唯一的限制是您的每日 2,500 限制,与谷歌... IDK 相同。只是一个建议。。

http://www.geocodefarm.com == 链接

于 2013-03-15T18:56:16.460 回答
0

我想知道请求中是否有很多重叠,就像每个人都在查找相同的 50 个位置?您编写了一个缓存代理,它首先向内部数据库发出请求,然后在未找到结果时从 Google 发出请求。这可以在软件级别完成,将 GeoCode 调用更改为 InternalGeoCode,或者在网络级别捕获所有对 Google Geocode 服务器的请求并重定向它们?我不是 100% 很难实现,或者如果它会有所帮助,也许这些请求都是独一无二的。

于 2012-03-28T17:45:52.713 回答
0

一种可能性是使用一批反向地理编码而不是单个请求。谷歌在一个方向请求中最多允许 24 个航点。您可以等到批量累积 24 个反向地理编码,而不是发送单个反向地理编码。或者您可以在此答案中使用 Yahoo 地图:显示静态 Google 地图时出现问题

于 2012-02-27T23:05:30.240 回答
0

标准许可的限制是50 到 100 QPS(每秒查询数),具体取决于服务(即高程服务有 50 QPS 限制,地理编码有 100 QPS 限制)。尽管您可能有更高的配额,但您每秒不能执行超过 50 个请求,否则服务器将阻止您的 IP 大约 2 小时(根据我的经验)。解决方案是缓存请求并按计划而不是在发生时执行它们。

于 2018-04-17T07:27:01.533 回答