tilezen / tilezen-tasks

Tilezen x-repo tasks
0 stars 0 forks source link

Create overzooming microservice #13

Open rmarianski opened 7 years ago

rmarianski commented 7 years ago

We do still receive some requests for tiles > 16. We will stop handling requests for tiles > 20, but for the remainder it might be worth having a separate microservice that tries to fetch the z16 tile, and then "cuts out" the requested tile.

This one will probably need to be in python, because it'll need to decode the tile, perform geometry intersects operations, and then re-encode. We could grow the ability to perform these operations in a different language like golang, but I'd be worried about format encoding inconsistencies. But if the encoding logic ends up getting pushed to C across all formats we can just re-use it in different languages :)

We could also just do this right in the tileserver process, which would be more expedient in the short term. Where this would immediately help us is it would allow us to stop adding tiles greater than 16 to the toi. This means that when we prune the toi we could eliminate these tiles. It also would eliminate a performance issue we have.