git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: repo.or.cz renovation

From
JJ.H. <warthog19@eaglescrag.net>
Date
Mar 17, 2008, 18:44 UTC
Message-ID
<1205779482.2758.52.camel@localhost.localdomain>
In-Reply-To
<20080317174934.GC6803@machine.or.cz>
On Mon, 2008-03-17 at 18:49 +0100, Petr Baudis wrote:
Show 31 quoted lines
> On Thu, Mar 13, 2008 at 05:36:39PM -0700, J.H. wrote:
> > 
> > > You are of course right - I wanted to do the rename, but forgot to write
> > > it in the actual code. :-)
> > > 
> > > There is a more conceptual problem though - in case of such big sites,
> > > it really makes more sense to explicitly regenerate the cache
> > > periodically instead of making random clients to have to wait it out.
> > > We could add a 'force_update' parameter to accept from localhost only
> > > that will always regenerate the cache, but that feels rather kludgy -
> > > can anyone think of a more elegant solution? (I don't think taking the
> > > @projects generating code out of gitweb and then having to worry during
> > > gitweb upgrades is any better.)
> > 
> > You could do something similar to the gitweb caching I'm doing,
> > basically if a file isn't generated you make a user wait (no good way
> > around this really).  If a cache exists show it to the user unless the
> > cache is older than $foo.  If a re-generation needs to happen it happens
> > in the background so the user who triggers the regeneration sees
> > something immediately vs. having to wait (at the cost of showing out of
> > date data)
> 
> By the way, the index page is so far really the only bottleneck I'm
> seeing, other than that even project pages for huge repositories are
> shown pretty quickly. Did you ever try to just cache the index page on
> kernel.org? What sort of impact did it have? What evere the hotspots -
> project pages for the main repositories or some less obvious pages?
> 
> Just caching the index would be far less intrusive change than
> introducing caching everywhere and it might help to bring kernel.org
> gitweb back in sync with mainline. :-)

I think we are likely going to want to keep caching everything vs. just the front page. There are a few repos that get hit quite a bit and it would be better to have those cache vs. not. Really I would argue this is just a step in the direction of integrating all of my caching changes back into gitweb vs. us dropping what we've done so far.

BTW I'm about halfway through refactoring my tree from multiple files back to one, which at that point means I can start bringing it back into mainline and getting a patch series ready for submission.

- John
Previous: Petr BaudisNext: Jakub Narebski
Message 10 of 30 in “gitweb: Support caching projects list”
  1. gitweb: Support caching projects listPetr Baudis, Mar 13, 2008
  2. Jay SoffianMar 14, 2008
  3. Petr BaudisMar 14, 2008
  4. Jay SoffianMar 14, 2008
  5. J.H.Mar 14, 2008
  6. Jakub NarebskiMar 14, 2008
  7. J.H.Mar 14, 2008
  8. repo.or.cz renovationPetr Baudis, Mar 17, 2008
  9. Petr BaudisMar 17, 2008
  10. J.H.Mar 17, 2008
  11. Jakub NarebskiMar 17, 2008
  12. Jakub NarebskiMar 17, 2008
  13. Jakub NarebskiMar 14, 2008
  14. Jay SoffianMar 14, 2008
  15. Junio C HamanoMar 14, 2008
  16. Frank LichtenheldMar 14, 2008
  17. Jakub NarebskiMar 14, 2008
  18. Petr BaudisMar 17, 2008
  19. Jakub NarebskiMar 15, 2008
  20. Miklos VajnaMar 16, 2008
  21. Frank LichtenheldMar 16, 2008
  22. J.H.Mar 16, 2008
  23. Jakub NarebskiMar 16, 2008
  24. J.H.Mar 16, 2008
  25. Jakub NarebskiMar 16, 2008
  26. repo.or.cz renovatedPetr Baudis, Mar 17, 2008
  27. Junio C HamanoMar 17, 2008
  28. Petr BaudisMar 17, 2008
  29. Theodore TsoMar 17, 2008
  30. Petr BaudisMar 17, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.