commit 79c5f01150783c5b0596da26cecc4b02b53fd283
Author: Ross Wang imagipioneer@gmail.com
Date: Thu May 11 16:53:29 2023 -0700
[server] Caching
Write locks are being held for the duration of a fetch, which can be long. Two possibilities for dealing with this include downloading to a temporary file or using a memory cache. This goes with a memory cache to also save on disk IO costs. For simplicity, there's still a cache miss case under heavy load where a write lock may block reads. Also for simplcity since latlngs are infrequently read and seldom written, they are not cached.
commit 1654ad1d5c4e3ee444fe02ad8754f54e3422fac2
Author: Ross Wang imagipioneer@gmail.com
Date: Wed May 10 23:06:49 2023 -0700
[server] Factor out mutex map
Factors out a data structure that tracks lockable resources by key.
commit 79c5f01150783c5b0596da26cecc4b02b53fd283 Author: Ross Wang imagipioneer@gmail.com Date: Thu May 11 16:53:29 2023 -0700
commit 1654ad1d5c4e3ee444fe02ad8754f54e3422fac2 Author: Ross Wang imagipioneer@gmail.com Date: Wed May 10 23:06:49 2023 -0700