Complete.Org: Mailing Lists: Archives: gopher: April 2002:
[gopher] Re: Pygopherd nearing gopherd replacement
Home

[gopher] Re: Pygopherd nearing gopherd replacement

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: gopher@xxxxxxxxxxxx
Subject: [gopher] Re: Pygopherd nearing gopherd replacement
From: John Goerzen <jgoerzen@xxxxxxxxxxxx>
Date: Thu, 4 Apr 2002 18:20:03 -0500
Reply-to: gopher@xxxxxxxxxxxx

On Thursday, April 4, 2002, at 04:19  PM, Robert Hahn wrote:

> You want comments?
>
> I've a question. does that count? :)

Sure :-)

> How fast is it relative to the C version?

Right now, there has been exactly zero effort expended on optimization.
I have also not done any formal benchmarks.

That said, there is no noticeable difference between pygopherd and 
gopherd except when rendering very large (hundreds or thousands of 
items) UMN-style (dynamically-generated) directories.  Part of this is 
because pygopherd does more work to generate a directory -- looking up 
MIME types and such.  Part of this is because there is no caching 
mechanism yet.  And part of it is probably due to the modular 
architecture and interpreted nature of the code.  Maybe I've just done 
something inefficiently, too.

I was quite encouraged by the results otherwise.  The server generates 
"sane" URLs -- in fact, you could make it listen on port 80 and it would 
be indistinguishable from a regular webserver.  HTTP URLs generated by 
pygopherd do not contain a type character, so relative links in HTML 
docs will work, at least over HTTP (and perhaps with non-web-browser 
Gopher implementations?  crossing fingers!)  Pygopherd also does not add 
an extra (or "second" if you're using URLs) type character like UMN 
gopherd does.  Because it figures all this out itself, that is 
unnecessary.

> My guess is that the main bottleneck is the disk access, so it's
> probably not much slower, right?

Probably the main bottleneck is the Internet, followed by disk.  Yes.

-- John



[Prev in Thread] Current Thread [Next in Thread]