From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Marusich Subject: Re: Yet another Hydra mirror: hydra-mirror.marusich.info Date: Wed, 09 Mar 2016 00:27:28 -0800 Message-ID: <87y49s6opb.fsf@gmail.com> References: <87a8m9jx0z.fsf@gmail.com> <87vb4xnxhl.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34214) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adZSu-000081-Lo for guix-devel@gnu.org; Wed, 09 Mar 2016 03:27:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1adZSt-0005j0-GQ for guix-devel@gnu.org; Wed, 09 Mar 2016 03:27:32 -0500 In-Reply-To: <87vb4xnxhl.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Tue, 08 Mar 2016 10:13:26 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Nice! Are you using the nginx config that=E2=80=99s in guix-maintenance.= git? No, I'm not using that at the moment. In the future, if I set up any nginx servers to accomplish the same task, I will definitely use it. I would prefer to run my own servers, but for now this is something I can do immediately to help the project, so I decided to do it. CloudFront is a service, so you use its API (or the AWS Management Console, which is a web UI for the API) to create a "distribution" and configure it to use hydra.gnu.org as its "origin". A little extra work is required to glue everything together. For example, I had to create a CNAME pointing from hydra-mirror.marusich.info to d2xj50ygrk34qq.cloudfront.net, which is the canonical name of my distribution. Once it's configured, all requests sent to hydra-mirror.marusich.info are serviced by a nearby point of presence in the CloudFront content distribution network, and the results are cached. I've noticed that Hydra does not include cache-related headers (e.g., Cache-Control). Perhaps for this reason, the nginx config you linked seems to pick arbitrary caching settings. When using CloudFront, a distribution can be configured to respect the Cache-Control headers sent by the origin server. Does nginx provide similar functionality? Would it make sense to have hydra.gnu.org return such headers? For now, I've configured hydra-mirror.marusich.info to cache all successful requests for 1 week, and to respect cache-related headers from the hydra.gnu.org if it ever decides to send them. This seemed like a reasonable configuration for data which is not expected to change. Chris