git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dennis Stosberg <dennis@stosberg.net>
To: Martin Langhoff <martin.langhoff@gmail.com>
Cc: Jakub Narebski <jnareb@gmail.com>, git@vger.kernel.org
Subject: Re: [RFC] gitweb wishlist and TODO list
Date: Wed, 21 Jun 2006 15:05:35 +0200	[thread overview]
Message-ID: <20060621130535.G2b34d382@leonov.stosberg.net> (raw)
In-Reply-To: <46a038f90606201233p6283febbn9a46e36c3a666903@mail.gmail.com>

Martin Langhoff wrote:

> And, as you mention in your other post, mod_perl support. And a bit of
> speed. Gitweb rght now is really really slow.

A few days ago I have tried to run gitweb under mod_perl and these
are my results.  All of this hasn't got any real testing, so this is
more a request for comment.  I had to make two changes to gitweb to
get it running as a Registry script with mod_perl:

(1) With mod_perl you cannot access variables which were defined
    with "my" on file scope from subroutines.  Unless gitweb becomes
    split in separate packages the easiest solution is probably to
    use "our" to declare them.

(2) Setting %ENV has no effect on spawned processes under mod_perl,
    so the git commands would never find the project directories.
    My first thought was to set $GIT_DIR on the commands' command
    lines like in open($fh, '$GIT_DIR=blah git-rev-list ...') but it
    would lead to an extra shell being spawned on every invocation
    of a git command.

    So I added the possibility to set/override the path to the
    repository with a command line parameter.  For simplicity I
    handled that parameter in git.c.  The drawbacks are that it has
    to be given before the command name and that it won't work when
    commands are invoked as "git-command".

The gains vary hugely.  Inexpensive views like the title page, blob
and commit view are sped up by a factor of 5 to 8 for successive
requests.  The project summary in contrast issues quite a number of
calls to git, so the speedup is only a few percent for it.

Regards,
Dennis

  parent reply	other threads:[~2006-06-21 13:05 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-20 16:51 [RFC] gitweb wishlist and TODO list Jakub Narebski
2006-06-20 17:33 ` Carl Worth
2006-06-20 17:46   ` Jakub Narebski
2006-06-20 17:55     ` Petr Baudis
2006-06-20 18:34       ` Jakub Narebski
2006-06-20 18:40         ` Petr Baudis
2006-06-21 14:52       ` Jakub Narebski
2006-06-20 19:33 ` Martin Langhoff
2006-06-20 19:56   ` Jakub Narebski
2006-06-20 21:17     ` Martin Langhoff
2006-07-01 10:35       ` Paul Mackerras
2006-06-21 13:05   ` Dennis Stosberg [this message]
2006-06-21 13:07     ` [PATCH 1/3] gitweb: Declare global variables with "our" Dennis Stosberg
2006-06-21 13:08     ` [PATCH 2/3] Add a parameter to specify the repository path Dennis Stosberg
2006-06-21 13:09     ` [PATCH 3/3] gitweb: Use --git-dir parameter instead of setting $ENV{'GIT_DIR'} Dennis Stosberg
2006-06-21 13:33       ` Timo Hirvonen
2006-06-21 13:42         ` Jakub Narebski
2006-06-21 13:30     ` [RFC] gitweb wishlist and TODO list Jakub Narebski
2006-06-22 10:00       ` Dennis Stosberg
2006-06-22 14:47         ` Ryan Anderson
2006-06-21 16:45     ` Ryan Anderson
2006-06-21 17:36       ` Jakub Narebski
2006-06-20 19:46 ` Junio C Hamano
2006-06-20 20:10 ` Petr Baudis
2006-06-20 20:59   ` Jakub Narebski
2006-06-20 21:25 ` Petr Baudis
2006-06-20 21:53 ` Thomas Glanzmann
2006-06-21  8:56   ` Josef Weidendorfer
2006-06-21  9:15     ` Jakub Narebski
2006-06-21  9:57       ` Josef Weidendorfer
2006-06-21 13:53         ` Jakub Narebski
     [not found]           ` <200606211802.41071.Josef.Weidendorfer@gmx.de>
2006-06-21 16:38             ` Jakub Narebski
2006-06-21 20:35               ` Josef Weidendorfer
2006-06-22  9:01 ` Jakub Narebski
2006-06-22  9:14   ` Junio C Hamano
  -- strict thread matches above, loose matches on Subject: below --
2006-09-02 16:17 Jakub Narebski
2006-09-02 18:10 ` Marco Costalba
2006-09-02 19:29 ` Jakub Narebski
2006-09-03  4:26   ` Marco Costalba
2006-09-03  9:27     ` Jakub Narebski
2006-09-03 11:10       ` Marco Costalba
2006-09-03 11:24         ` Jakub Narebski
2006-09-08  0:44 ` Jakub Narebski
2006-09-08  1:16   ` Junio C Hamano
2006-09-08  9:11     ` Jakub Narebski
2006-09-03 11:52 Jakub Narebski
2006-09-03 12:18 ` Marco Costalba
2006-09-03 12:38   ` Jakub Narebski
2006-10-09 12:49 Jakub Narebski
2006-10-10  1:47 ` Luben Tuikov
2006-10-10  8:54   ` Jakub Narebski
2006-10-11  5:52 ` Junio C Hamano
2006-10-11  9:20   ` Jakub Narebski
2006-10-12 10:03   ` Junio C Hamano
2006-10-13 19:55     ` Jakub Narebski
2006-10-11 15:09 ` Jakub Narebski
2006-10-11 23:05 ` Jakub Narebski
2008-04-25 13:14 Jakub Narebski
2008-09-25 10:30 Jakub Narebski
2008-09-25 11:08 ` Pedro Melo
2008-09-25 12:23   ` Jakub Narebski
2008-09-25 14:45     ` Pedro Melo
2008-09-25 21:23       ` Jakub Narebski
2008-09-25 13:19 ` Wincent Colaiuta
2008-09-25 13:33   ` Petr Baudis
2008-09-25 15:41   ` Jakub Narebski
2008-09-28 10:01 ` Jakub Narebski
2008-09-28 21:18   ` Petr Baudis
2008-10-01  8:40 ` Ask Bjørn Hansen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060621130535.G2b34d382@leonov.stosberg.net \
    --to=dennis@stosberg.net \
    --cc=git@vger.kernel.org \
    --cc=jnareb@gmail.com \
    --cc=martin.langhoff@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).