我有一个xml项目文件有几个图层,其中许多依次划分为2个(低/高)或3个(低/中/高)层,每个图层覆盖不同缩放范围。整个层数(考虑细分)也是42.我使用mapnik 3.0.12的python-mapnik绑定。 那么,如果我看看PostgreSQL日志,每次我在给定的缩放级别上请求一个地图图像(一个简单的静态图像,而不是一系列的图块),通常只需要12个42)要执行的查询,我总是看到这个42倍:Mapnik:太多的“LIMIT 0”查询
“时间:xx.xxx毫秒声明:”
随后查询itsefl的定义,再加上“LIMIT 0”结尾。 然后我可以找到这个12倍:
“时间:xx.xxx MS执行:”
这是有关实际上需要执行的12个查询。 我想42个查询的尾部“LIMIT 0”是“检查查询”,执行分析哪个索引是最好的使用,等等......但我想知道是否有办法做这仅适用于实际必须一次执行的查询,而不适用于project.xml文件中的所有查询(图层)。
我意识到这是我的错:在我的代码中,我反复调用每个tile请求的'mapnik.load_map(...)'方法,而不是在启动服务器时调用一次。 – Andrea