From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id kBK9CZ3aDF9iSwAA0tVLHw (envelope-from ) for ; Mon, 13 Jul 2020 22:05:17 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id qFG1BZ3aDF8JWwAAB5/wlQ (envelope-from ) for ; Mon, 13 Jul 2020 22:05:17 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A48DE9401CF for ; Mon, 13 Jul 2020 22:05:16 +0000 (UTC) Received: from localhost ([::1]:38734 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jv6ZX-000497-Ka for larch@yhetil.org; Mon, 13 Jul 2020 18:05:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51418) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jv6ZM-00047E-Da for guix-devel@gnu.org; Mon, 13 Jul 2020 18:05:04 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:46218) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jv6ZL-0001A2-JZ; Mon, 13 Jul 2020 18:05:03 -0400 Received: from 84-52-226.102.3p.ntebredband.no ([84.52.226.102]:50994 helo=localhost) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1jv6ZJ-0005fG-Bm; Mon, 13 Jul 2020 18:05:03 -0400 From: Marius Bakke To: Christopher Baines , Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: [Guix Website] A Search Page for Packages In-Reply-To: <874kqbjhv0.fsf@cbaines.net> References: <878sfnpl9j.fsf@gnu.org> <874kqbjhv0.fsf@cbaines.net> Date: Tue, 14 Jul 2020 00:04:46 +0200 Message-ID: <87sgdvax6p.fsf@gnu.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Daniela Lura , guix-devel@gnu.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -3.11 X-TUID: ap07tF7tgjEP --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Christopher Baines writes: > Ludovic Court=C3=A8s writes: > >> Heya Danjela, >> >> Daniela Lura skribis: >> >>> Taking into consideration the suggestion made in this thread: >>> https://lists.gnu.org/archive/html/guix-devel/2020-05/msg00096.html, my >>> mentor, Christopher Baines suggested me to write a script that serves a >>> search page for packages using the search functionality within the Guix >>> Data Service, >>> https://data.guix.gnu.org/repository/1/branch/master/latest-processed-r= evision/packages?search_query=3Dgit&field=3Dversion&field=3Dsynopsis&after_= name=3D&limit_results=3D100 >>> . >>> >>> The prototype page can be accessed through a test version of the Guix >>> website that Chris deployed: >>> http://guix-website-test.cbaines.net/packages/search >> >> Cool! To be clear, guix-website-test actually makes a search query on a >> Data Service instance, right? I guess that explains part of the >> slowness, but maybe we could tweak nginx to keep search results in cache >> for a few hours. >> >> Florian raised an important issue regarding the possibility of denial of >> service. Ideas on how to mitigate that, either in the Data Service, or >> nginx at guix.gnu.org? > > On this point specifically, I've used the rate limiting functionality in > NGinx before, and that's probably a low cost approach to guarding > against this. It's not going to stop a DDOS, but might help avoid lots > of requests from one IP address causing load issues. We also have Varnish, a web caching proxy that excels at tasks like this, and is used by some CDNs such as Fastly. I'm happy to help write a configuration if that is desired. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl8M2n4ACgkQoqBt8qM6 VPokTwgAwZtfH5ymQJpnf4wZRkj/Hmsfr97E7d1gEIHFvPN+nFu0ZSxb8ANlw3DA wuJ3idHVUfqNpdIhVJIzMqR46V5GYyNYl9TeSJ6kG1bipswFaRSn9MoYS6vsRSYf Cdn/V9JtrPDxbFYcPYFz0suQrq8j+vNolea17YC30Pt10pdvyvs6vqUWtrn/ejh0 cT3/ef8JKQym0Q6AGmOUc6V24X0rW+cSI+0cjt3GJjhUzXe5Uf/ybxYc0mmaVSaJ XZ66MptvcYjdPmRRe0pYLhPsyWXJorMYCutee3QcXi0TESMLLVfXaW9HrPO6w2h7 sPewCdEU2HMeyS1SoBpukldNNU98NQ== =URfc -----END PGP SIGNATURE----- --=-=-=--