Je sers des tuiles vectorielles en utilisant TileStache , j'ai tout configuré comme je veux. Mes données sont stockées dans Postgres et j'utilise le fournisseur VecTiles pour servir les tuiles GeoJSON .
Je veux mettre en cache toutes mes tuiles pour rendre les tuiles plus rapides. J'utilise tilestache-seed.py pour amorcer mon cache. J'utilise tilestache-seed sur plusieurs machines. Tilestache-seed a très bien fonctionné jusqu'au niveau de zoom 13, mais après cela, il faut beaucoup trop de temps pour mettre en cache les tuiles. Juste pour le niveau de zoom 16, j'ai 5023772 tuiles à mettre en cache, et je ne reçois que 100 000 à 200 000 tuiles par jour sur chaque machine.
Comment accélérer la mise en cache de mes tuiles ? Existe-t-il un moyen d'affiner tilestache-seed.py et de le rendre plus rapide?
Mise à jour: j'ai essayé de construire des index spatiaux sur mes tables (sur la colonne de géométrie et les colonnes utilisées pour filtrer les données via la clause where) et je n'ai toujours pas vu une augmentation significative de la vitesse de tuilage. À ce rythme, seul Zoom 17 me prendra un mois et cette fois-ci ne augmentera que de façon exponentielle lorsque je me dirigerai vers Zoom 21
Mise à jour 2: J'ai également essayé de créer des vues matérialisées et il n'y a aucun changement perceptible dans les performances, donc l'optimisation de la base de données ne fonctionne pas. Je pense que je devrai optimiser le tilestache-seed.py lui-même, ou imaginer une nouvelle façon de mettre en cache les tuiles.
Informations sur le matériel J'exécute les processus de mise en cache sur 8 PC différents, dont l'un est un i7 avec 32 Go de RAM et un autre est un i3 avec 4 Go de RAM, mais ils me donnent tous les deux la même vitesse de mise en cache (environ 100 000 tuiles par jour)