Re: A shared tile cache

Hi Yuri,

nice proposal! I like the idea of the shared tile cache a lot. I went
through your proposal and in general, it seems to be very reasonable -
I think most of the libchamplain functionality could be implemented
using this cache scheme. Here are my comments regarding the proposal:

The first comment is regarding the "cache properties" file. The
problem I see here is that the settings written here by the first
application which creates this file "win". I'm now talking mainly
about the "size" and "age" fields. In my opinion, these fields just
shouldn't be there.

"age" seems to be completely unnecessary - each application can update
the tiles according to its needs and other applications just shouldn't
care (in the worst case, the tiles in the cache will be too old for a
different application).

"size" is quite similar in this case - if some application is too
aggressive with its pruning, no problem, the tiles can still be
downloaded from the Internet. The -1 case doesn't make much sense for
a cache. If it cannot be modified, it's not a cache any more and when
tiles get too old, they have to be downloaded always from the server.
If an application needs some static tile storage, it should create it
in it's own settings directory - other applications are most probably
not interested in exactly these tiles.

The other comment I have is regarding the tile metadata ini file - the
name for the "view count" property should be specified so all
applications can share it. Applications which don't want to supported
would be free to ignore it but those that do should use a the same


On Mon, Mar 24, 2014 at 6:44 PM, Yuri D'Elia <wavexx thregr org> wrote:
Hi everyone.

I've been using JOSM and several other programs over time depending on
the functionality that I needed. Each of these programs, despite
querying the same servers, is handling an independent cache.

As an user, I always wanted these programs to share their imagery cache
to save disk and bandwidth usage. There have been some spot discussions
on the various mailing lists, and last month I decided to try to come up
with a solution to set things in motion.

I wrote the following draft, which outlines a very simple scheme that
mimics the already know tile format layout (with the exception of an
extra configuration file, the format *is* the same), a common location,
and some common rules in order for applications to cooperate on a shared
cache which *must* be simple to use.

The draft is here:

As a developer, I'll try to implement the above scheme in JOSM (which,
like most other programs, has a slightly different sheme). I'm asking
all interested parties to look at the draft, and see whether what you
see is sensible, and you could potentially foresee using in the future
for a general user benefit.

Please chime in for suggestions and proposals. Nothing is written in
stone at this stage.

Thanks a lot for your time.

PS: The relevant JOSM bug report, for those interested:
libchamplain-list mailing list
libchamplain-list gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]