VOResource 1.1: Mirrors?
Pierre Fernique
Pierre.Fernique at astro.unistra.fr
Thu Jun 2 11:39:33 CEST 2016
Le 02/06/2016 à 09:42, Markus Demleitner a écrit :
> You can do this because you basically have one machine to deal with.
> When a registry query yields 20 different services, the picture
> changes.
>
> In GLU, is the only mirror metadata you have the base URL?
No, we can describe any kind of URLs. Sometimes the base URL can differ
from one site to another depending of the HTTP configuration (not always
in our control). For more details, I need to describe a little bit more
the GLU (sorry). The GLU describes mirrors thanks to 2 complementary
methods:
*0) First of all, a GLU record is basically just a couple (ID,URL)
*
%A Simbad
%U http://simbad.u-strasbg.fr/sim-id
*1) Or mirror can be defined by a n-uplet (ID, id1,id2,id3...) and the
URL associated to the ID can be one of the URLs associated to id1,
id2,...) => Mirror definition by indirection*
%A Simbad
%I Simbad.fr
%I Simbad.us
%A Simbad.fr
%U http://simbad.u-strasbg.fr/sim-id
%A Simbad.us
%U http://simbad.harvard.fr/localpath/sim-id
*2) or a couple (ID, URL_template_containing_GLUids) => The final URL is
built recursively => Mirror definition by recursion*
%A Simbad
%U <&SimbadRoot>/sim-id
%A Simbad-by-list
%U <&SimbadRoot>/sim-list
%ASimbadRoot
%I SimbadRoot.fr
%I SimbadRoot.us
%ASimbadRoot.fr
%U http://simbad.u-strasbg.fr
%A SimbadRoot.us
%U http://simbad.harvard.fr
The resolution of the final URL for a given ID can be done by the final
client. It is the best solution to find the appropriate mirror site
according to the user netword localization and the current state of the
mirrors. It can also be done by the GLU server which provides the GLU
records for a "basic" client (8 sites distributed over the world) - in
this last case, only the recent asked GLU records (15 days) for a
dedicated GLU server will be taken into account in its test loop. The
delay between two tests depends of the GLU server configuration (default
1h) which can be overriden by a dedicated delay defined in each GLU
record itself (for instance 10mn for Sesame)
ex: URL resolution of Simbad from UK GLU site
=> http://archive.ast.cam.ac.uk/viz-bin/nph-glu.pl?<&Simbad,u>
ex: URL resolution of VizieR README page for II/250 catalog from Japan
GLU site
=> http://vizier.nao.ac.jp/viz-bin/nph-glu.pl?<&VizDetail,u II/250>
In the first case (client side URL resolution), for Aladin Desktop, I
cache the last resolution results in order to keep a fast launch time,
and redo the test in background during the time of the Aladin session
(only if the last result is too old (one day)). If one last result URL
does not work (network problem, server crash...), the test is redo
immediately to find a better site (crash backup). If the time response
of a test is sensible the same between 2 mirror sites, Aladin chooses
one randomly (load balancing). We have about 500 Aladin sessions per day
and 300 000 http queries generated by these sessions. Find the best
mirror site is definitively a good idea.
Cheers
Pierre
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.ivoa.net/pipermail/registry/attachments/20160602/11dbeff7/attachment.html>
More information about the registry
mailing list