[英]Increase maximum memory limit in own install of OpenStreetMap's Overpass API
为了我的特定目的,我需要更改一个area
Overpass API定义,以包括所有建筑物,无论它们是否具有名称(因此is_in()
将在请求时返回这些建筑物)。
为此,我已经在3个特定国家/地区安装了API的本地副本,并修改了os3m脚本,该脚本生成了适合我的定义的区域-到目前为止,一切都很好。
很明显,因为它是处理多了很多 ,该脚本将需要比默认的一个更多的内存ways
。 我正在运行的计算机具有16GB of RAM
。 如果我为脚本指定2GB
或更少的空间(即element-limit="2073741824"
),那么它将耗尽内存,但是指定更多(甚至100MB)将始终导致错误:
Dispatcher_Client :: request_read_and_idx ::超时
几秒钟后。
问题是,如何告诉Overpass API /调度程序使用2GB
以上的2GB
是完全可以的,实际上,允许它为此查询分配~15GB
2GB
吗?
您可以尝试增加total_available_space
中的total_available_space
两个值(当前为4GB),并从源代码重新编译Overpass API。
AFAIK之前没有人尝试过通过区域处理大量建筑物,因此请为进一步的问题做好准备。 Overpass API开发人员列表可能是讨论此问题的好地方,也可以引起Roland的注意(Overpass API开发人员/维护人员),因为Roland不在stackoverflow上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.