On Fri, 29 Apr 2016 at 13:29:04, Johannes Löthberg wrote:
Generating it more often sounds good to me, and triggering it on create/delete does sound like a good thing to implement eventually, but would probably want to have a task queue thing set up for that, and have workers do the actual generation.
Agreed.
Did some testing locally with zsync, and curling the file locally took between 0.005 and 0.010 seconds. A first zsync download takes between 0.011 and 0.016 seconds. A zsync with no changes takes between 0.004 and 0.012 seconds.
It's a bit tricky to reliably test a zsync with a changed packages file since I don't have multiple different ones saved down, and modifying them myself will give different results from what the AUR creates, so it'd be hard to get representative results.
When I get a few versions of the file generated by the AUR I'll try doing it from my server, and with multiple zsyncs, but I'm not sure if it'll really matter much, since it takes just ~0.4 seconds to download the file from the AUR in the first place.
Besides measuring download time, it might be interesting to actually measure the amount of data transferred. It might well be that there is not big difference in running times but the zsync version might still require less bandwidth (because it does multiple small requests instead of one huge request/reply). As I said in the previous email, parameters like the block size could also have a large impact on this and we might need to adjust them. Regards, Lukas