speeding up sputnik (000004)
XSSFilter could not parse (X)HTML:
<p>From sputnik-list-bounces@lists.luaforge.net Fri Jan 30 08:55:48 2009
Received: from pop.gmail.com (ag-in-f109.google.com [72.14.247.109])</p>
<pre><code>by localhost (mpop-1.0.11) with POP3
for <yuri>; Fri, 30 Jan 2009 08:55:48 +0000
</code></pre>
<p>Delivered-To: sputnik.list.archiver@gmail.com
Received: by 10.142.161.20 with SMTP id j20cs1367458wfe;</p>
<pre><code> Thu, 15 Jan 2009 03:19:50 -0800 (PST)
</code></pre>
<p>Received: by 10.100.8.17 with SMTP id 17mr991631anh.85.1232018389901;</p>
<pre><code> Thu, 15 Jan 2009 03:19:49 -0800 (PST)
</code></pre>
<p>Return-Path: <a href="mailto:sputnik-list-bounces@lists.luaforge.net">sputnik-list-bounces@lists.luaforge.net</a>
Received: from mail.luaforge.net (www.luaforge.net [147.65.1.201])</p>
<pre><code> by mx.google.com with ESMTP id b14si43374896ana.32.2009.01.15.03.19.39;
Thu, 15 Jan 2009 03:19:49 -0800 (PST)
</code></pre>
<p>Received-SPF: pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) client-ip=147.65.1.201;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) smtp.mail=sputnik-list-bounces@lists.luaforge.net; dkim=neutral (body hash did not verify) header.i=@gmail.com
Received: from localhost ([127.0.0.1] helo=localhost.localdomain)</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50)
id 1LNS5a-0005f2-Rc; Thu, 15 Jan 2009 11:16:50 -0200
</code></pre>
<p>Received: from rv-out-0506.google.com ([209.85.198.234])</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50) id 1LM5da-0008BG-M3
for sputnik-list@lists.luaforge.net; Sun, 11 Jan 2009 17:06:19 -0200
</code></pre>
<p>Received: by rv-out-0506.google.com with SMTP id k40so10243059rvb.29</p>
<pre><code>for <sputnik-list@lists.luaforge.net>;
Sun, 11 Jan 2009 09:08:55 -0800 (PST)
</code></pre>
<p>DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;</p>
<pre><code>h=domainkey-signature:received:received:message-id:date:from:sender
:to:subject:mime-version:content-type:content-transfer-encoding
:content-disposition:x-google-sender-auth;
bh=fIvUYU2y/GaVymLuCWEjrfqaBpX/413oyGIeO6ma0rY=;
b=Smr/ryjcc2StXJFr4FcPii7v+5gNl7J2wKKUYQ1rb7Gbil/jESCAfxFBN25ItcVlSU
37W1BM4P04f+3ZjXRblS+4v3TI4+4E6Vk9/u1SATkiHHaVRf5nBA02hrqaj1bNHlkL60
OJv5lA4G5GYkV9TDZPT598kPy1DUOeFMTfmXU=
</code></pre>
<p>DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma;</p>
<pre><code>h=message-id:date:from:sender:to:subject:mime-version:content-type
:content-transfer-encoding:content-disposition:x-google-sender-auth;
b=uKynO+XDrlXfslpetlAQAzZmcoQ1qiHoLZ68nFaMCdHfIOmxWhAdCUfn+FqufO3z6W
Dnc63ae1jjAaa4WJgQZjTrDOGeW9XjJL/TypwO2oZ0BO1bGvICOL+KQKPc0JCZcEjMnh
yhR72fLHbsJ6UMvuWXQaYvntssnUNOwRF0qsE=
</code></pre>
<p>Received: by 10.141.105.18 with SMTP id h18mr13934160rvm.109.1231693735232;</p>
<pre><code>Sun, 11 Jan 2009 09:08:55 -0800 (PST)
</code></pre>
<p>Received: by 10.140.128.1 with HTTP; Sun, 11 Jan 2009 09:08:55 -0800 (PST)
Message-ID: <a href="mailto:fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com">fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com</a>
Date: Sun, 11 Jan 2009 15:08:55 -0200
From: "Yuri Takhteyev" <a href="mailto:yuri@sims.berkeley.edu">yuri@sims.berkeley.edu</a>
To: Sputnik <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
X-Google-Sender-Auth: 829c58d07e5107fe
Subject: [Sputnik-list] speeding up sputnik
X-BeenThere: sputnik-list@lists.luaforge.net
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "An all-purpose list for now." <sputnik-list.lists.luaforge.net>
List-Unsubscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=unsubscribe>
</code></pre>
<p>List-Archive: <a href="http://lists.luaforge.net/pipermail/sputnik-list">http://lists.luaforge.net/pipermail/sputnik-list</a>
List-Post: <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
List-Help: <a href="mailto:sputnik-list-request@lists.luaforge.net?subject=help">sputnik-list-request@lists.luaforge.net?subject=help</a>
List-Subscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=subscribe>
</code></pre>
<p>Sender: sputnik-list-bounces@lists.luaforge.net
Errors-To: sputnik-list-bounces@lists.luaforge.net</p>
<p>A list member who wanted to stay unnamed pointed out that Sputnik's
performance can be improved quite a bit by telling the client to cache
javascript and css files. I added support for this, and also made some
other changes to make YSlow happy.</p>
<ol>
<li>Caching</li>
</ol>
<p>Nodes have two new fields: http<em>cache</em>control and http<em>expires. Both
are set to nil at the level of @Root, but are then re-set for @CSS,
@JavaScript, @Binary</em>File and sputnik/css/colors - for now to
"max-age=3D3600" and "2" respectively. The value of http<em>cache</em>control
is passed directly to the client as "Cache-Control" header, and
http_expires is interpreted as an offset (in hours) to set the
timestamp in the "Expires" header. (I expect to tweak the value and
am looking for suggestions.)</p>
<p>This means that if you do nothing then images, css files and
javascript files will be cached for an hour by the client. If you are
making changes to those nodes (e.g., uploading a new logo) and want to
see the effects, you will need to do click on "reload" button in the
browser while holding shift. (Your users won't see the new logo until
their cache expires.) This seems to speed up the loading by a factor
of 3, after the first page view.</p>
<ol>
<li>JavaScript at the bottom.</li>
</ol>
<p>I moved all JavaScript to the bottom of the page, as YSlow recommends.
This doesn't seem to make any drastic changes, though I didn't measure
it very precisely.</p>
<ol>
<li>Gzipping content</li>
</ol>
<p>I used Igancio Burge=F1o's code (see an email to the Kepler list in
November) to add support for content compression. To enable this you
would need to set "USE_COMPRESSION" config parameter to "true" and
install lzlib rock. (Available from the main repository: "luarocks
install lzlib".) Again, I haven't noticed any huge improvements from
where I am at the moment, but perhaps in other cases it would make
more of a difference.</p>
<p>YSlow seems to be quite happy now, only wishing that we were using a
content delivery network. I am guessing further improvements in
performance would need to be from server-side profiling or from
server-side caching. (Or from adding support for content delivery
networks, as YSlow suggests.)</p>
<ul>
<li>yuri</li>
</ul>
<p>--=20
http://sputnik.freewisdom.org/</p>
<hr/>
<p>Sputnik-list mailing list
Sputnik-list@lists.luaforge.net
http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</p>
<p>From sputnik-list-bounces@lists.luaforge.net Fri Jan 30 08:55:48 2009
Received: from pop.gmail.com (ag-in-f109.google.com [72.14.247.109])</p>
<pre><code>by localhost (mpop-1.0.11) with POP3
for <yuri>; Fri, 30 Jan 2009 08:55:48 +0000
</code></pre>
<p>Delivered-To: sputnik.list.archiver@gmail.com
Received: by 10.142.161.20 with SMTP id j20cs1385189wfe;</p>
<pre><code> Thu, 15 Jan 2009 11:26:27 -0800 (PST)
</code></pre>
<p>Received: by 10.101.70.14 with SMTP id x14mr456179ank.132.1232047585904;</p>
<pre><code> Thu, 15 Jan 2009 11:26:25 -0800 (PST)
</code></pre>
<p>Return-Path: <a href="mailto:sputnik-list-bounces@lists.luaforge.net">sputnik-list-bounces@lists.luaforge.net</a>
Received: from mail.luaforge.net (www.luaforge.net [147.65.1.201])</p>
<pre><code> by mx.google.com with ESMTP id d12si480958and.22.2009.01.15.11.26.12;
Thu, 15 Jan 2009 11:26:25 -0800 (PST)
</code></pre>
<p>Received-SPF: pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) client-ip=147.65.1.201;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) smtp.mail=sputnik-list-bounces@lists.luaforge.net; dkim=neutral (body hash did not verify) header.i=@gmail.com
Received: from localhost ([127.0.0.1] helo=localhost.localdomain)</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50)
id 1LNZgI-0001KF-2v; Thu, 15 Jan 2009 19:23:14 -0200
</code></pre>
<p>Received: from fg-out-1718.google.com ([72.14.220.158])</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50) id 1LNZgF-0001KA-W6
for sputnik-list@lists.luaforge.net; Thu, 15 Jan 2009 19:23:12 -0200
</code></pre>
<p>Received: by fg-out-1718.google.com with SMTP id 13so627216fge.11</p>
<pre><code>for <sputnik-list@lists.luaforge.net>;
Thu, 15 Jan 2009 11:25:56 -0800 (PST)
</code></pre>
<p>DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;</p>
<pre><code>h=domainkey-signature:received:received:message-id:from:to
:in-reply-to:content-type:content-transfer-encoding:mime-version
:subject:date:references:x-mailer;
bh=GvskbENsOpLl5uxrUqmakHBl/6n8NcwxVeAv0c61O00=;
b=lPWJ+yDhsANrKVt4qbYThY5l8b/H1H3FfxfqPWbU+BcZkRPXGEAwhLiGjYGgkw2hr+
e/iUcQcDc4tIr67ONmy1dFzZrwTqYVCP4zLH1erKVqARGk9x5PDS1yRbRUyXIHU1tprT
xbz9oWdgtoWqTPSq3zcSFkqIXQqdSAjlYQi30=
</code></pre>
<p>DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma;</p>
<pre><code>h=message-id:from:to:in-reply-to:content-type
:content-transfer-encoding:mime-version:subject:date:references
:x-mailer;
b=XEmOlqsd7u1+cEmyDXDFcxwlK8+OLgP6Z8/XT3qQaOlvY9PPN5oPz2Q2jaY1e93nPz
uiEVU3NGQPJjy5fxfLLmuK8k5V3J1ZdEVRzC+qY0A0WeCCVp+6PyD49TE6cX1Iq4Zc8D
mwHcUzsVRpW9eT0VwoxVYvBziINEQ/LY32PR4=
</code></pre>
<p>Received: by 10.86.91.3 with SMTP id o3mr1550897fgb.35.1232047556599;</p>
<pre><code>Thu, 15 Jan 2009 11:25:56 -0800 (PST)
</code></pre>
<p>Received: from ?192.168.1.4? (adsl-84-226-47-43.adslplus.ch [84.226.47.43])</p>
<pre><code>by mx.google.com with ESMTPS id e11sm794619fga.52.2009.01.15.11.25.55
(version=TLSv1/SSLv3 cipher=RC4-MD5);
Thu, 15 Jan 2009 11:25:55 -0800 (PST)
</code></pre>
<p>Message-Id: <a href="mailto:DC697939-7409-47F5-9F69-C077EBDB844B@gmail.com">DC697939-7409-47F5-9F69-C077EBDB844B@gmail.com</a>
From: Petite Abeille <a href="mailto:petite.abeille@gmail.com">petite.abeille@gmail.com</a>
To: Sputnik <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
In-Reply-To: <a href="mailto:fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com">fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com</a>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v930.3)
Subject: Re: [Sputnik-list] speeding up sputnik
Date: Thu, 15 Jan 2009 20:25:53 +0100
References: <a href="mailto:fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com">fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com</a>
X-Mailer: Apple Mail (2.930.3)
X-BeenThere: sputnik-list@lists.luaforge.net
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "An all-purpose list for now." <sputnik-list.lists.luaforge.net>
List-Unsubscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=unsubscribe>
</code></pre>
<p>List-Archive: <a href="http://lists.luaforge.net/pipermail/sputnik-list">http://lists.luaforge.net/pipermail/sputnik-list</a>
List-Post: <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
List-Help: <a href="mailto:sputnik-list-request@lists.luaforge.net?subject=help">sputnik-list-request@lists.luaforge.net?subject=help</a>
List-Subscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=subscribe>
</code></pre>
<p>Sender: sputnik-list-bounces@lists.luaforge.net
Errors-To: sputnik-list-bounces@lists.luaforge.net</p>
<p>On Jan 11, 2009, at 6:08 PM, Yuri Takhteyev wrote:</p>
<blockquote>
<p>A list member who wanted to stay unnamed pointed out that Sputnik's
performance can be improved quite a bit by telling the client to cache
javascript and css files. I added support for this, and also made some
other changes to make YSlow happy.</p>
</blockquote>
<p>You might also want to consider e-tag and conditional requests as well <br/>
(e.g. If-None-Match & 304 Not Modified).</p>
<p>That said... considering that Sputnik usually runs in a full fledge <br/>
server such as Apache... why bother re-implementing all those features <br/>
in Sputnik itself?</p>
<p>Cheers,</p>
<p>--
PA.
http://alt.textdrive.com/nanoki/</p>
<hr/>
<p>Sputnik-list mailing list
Sputnik-list@lists.luaforge.net
http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</p>
<p>From sputnik-list-bounces@lists.luaforge.net Fri Jan 30 08:55:49 2009
Received: from pop.gmail.com (ag-in-f109.google.com [72.14.247.109])</p>
<pre><code>by localhost (mpop-1.0.11) with POP3
for <yuri>; Fri, 30 Jan 2009 08:55:49 +0000
</code></pre>
<p>Delivered-To: sputnik.list.archiver@gmail.com
Received: by 10.142.161.20 with SMTP id j20cs1392058wfe;</p>
<pre><code> Thu, 15 Jan 2009 13:57:37 -0800 (PST)
</code></pre>
<p>Received: by 10.100.121.12 with SMTP id t12mr1505255anc.96.1232056655438;</p>
<pre><code> Thu, 15 Jan 2009 13:57:35 -0800 (PST)
</code></pre>
<p>Return-Path: <a href="mailto:sputnik-list-bounces@lists.luaforge.net">sputnik-list-bounces@lists.luaforge.net</a>
Received: from mail.luaforge.net (www.luaforge.net [147.65.1.201])</p>
<pre><code> by mx.google.com with ESMTP id d12si850489and.42.2009.01.15.13.57.25;
Thu, 15 Jan 2009 13:57:35 -0800 (PST)
</code></pre>
<p>Received-SPF: pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) client-ip=147.65.1.201;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) smtp.mail=sputnik-list-bounces@lists.luaforge.net; dkim=neutral (body hash did not verify) header.i=@gmail.com
Received: from localhost ([127.0.0.1] helo=localhost.localdomain)</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50)
id 1LNc2h-0004RA-JB; Thu, 15 Jan 2009 21:54:31 -0200
</code></pre>
<p>Received: from fg-out-1718.google.com ([72.14.220.154])</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50) id 1LNc2f-0004R5-BB
for sputnik-list@lists.luaforge.net; Thu, 15 Jan 2009 21:54:29 -0200
</code></pre>
<p>Received: by fg-out-1718.google.com with SMTP id 13so656420fge.11</p>
<pre><code>for <sputnik-list@lists.luaforge.net>;
Thu, 15 Jan 2009 13:57:14 -0800 (PST)
</code></pre>
<p>DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;</p>
<pre><code>h=domainkey-signature:received:received:message-id:from:to
:in-reply-to:content-type:content-transfer-encoding:mime-version
:subject:date:references:x-mailer;
bh=KhyZiAI+DYaCTxyS066H7AUVWf6jX/NTjB0ala+fweg=;
b=nXtqArONI5IYFYwRsx4LhuDaJo498R1W4gVX7zFQvSwgE3ZjnHRtI1zVUJltK9PHSU
XBZ0XYWhJ08zM7ENq8Ogd3R/aoEXmsBsPLWa6WyhQUTteUIeevozdpOuDL7aI7+Pcn/V
f2VrvZx4i8axbpqGCDQqroQxyay9NDavHwQLY=
</code></pre>
<p>DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma;</p>
<pre><code>h=message-id:from:to:in-reply-to:content-type
:content-transfer-encoding:mime-version:subject:date:references
:x-mailer;
b=ubjaFCoXpDzQD44c9IXGFSj0WDbnzjgaKTRsSdki8jxV0qwz3lpEUoNWfY1QTskyyW
D6aAWKnykM3uLmCFLhEpxy6W10KAXdeNj+ACFwTFk9id/FpS/edw6vTaAX7mAOLsSfj3
4kOyMrOmQ81mDk8VIly3fsoU7CcjQftgwPOGw=
</code></pre>
<p>Received: by 10.86.52.6 with SMTP id z6mr287866fgz.63.1232056634052;</p>
<pre><code>Thu, 15 Jan 2009 13:57:14 -0800 (PST)
</code></pre>
<p>Received: from ?192.168.1.4? (adsl-84-226-47-43.adslplus.ch [84.226.47.43])</p>
<pre><code>by mx.google.com with ESMTPS id 12sm298058fgg.36.2009.01.15.13.57.13
(version=TLSv1/SSLv3 cipher=RC4-MD5);
Thu, 15 Jan 2009 13:57:13 -0800 (PST)
</code></pre>
<p>Message-Id: <a href="mailto:777B6213-62D5-497C-B8C4-059C24C3AA42@gmail.com">777B6213-62D5-497C-B8C4-059C24C3AA42@gmail.com</a>
From: Petite Abeille <a href="mailto:petite.abeille@gmail.com">petite.abeille@gmail.com</a>
To: Sputnik <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
In-Reply-To: <a href="mailto:fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com">fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com</a>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v930.3)
Subject: Re: [Sputnik-list] speeding up sputnik
Date: Thu, 15 Jan 2009 22:57:11 +0100
References: <a href="mailto:fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com">fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com</a>
X-Mailer: Apple Mail (2.930.3)
X-BeenThere: sputnik-list@lists.luaforge.net
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "An all-purpose list for now." <sputnik-list.lists.luaforge.net>
List-Unsubscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=unsubscribe>
</code></pre>
<p>List-Archive: <a href="http://lists.luaforge.net/pipermail/sputnik-list">http://lists.luaforge.net/pipermail/sputnik-list</a>
List-Post: <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
List-Help: <a href="mailto:sputnik-list-request@lists.luaforge.net?subject=help">sputnik-list-request@lists.luaforge.net?subject=help</a>
List-Subscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=subscribe>
</code></pre>
<p>Sender: sputnik-list-bounces@lists.luaforge.net
Errors-To: sputnik-list-bounces@lists.luaforge.net</p>
<p>On Jan 11, 2009, at 6:08 PM, Yuri Takhteyev wrote:</p>
<blockquote>
<p>A list member who wanted to stay unnamed pointed out that Sputnik's
performance can be improved quite a bit</p>
</blockquote>
<p>For what it's worth, here are some basic numbers from ApacheBench:</p>
<p>Apache -> CGI -> Sputnik</p>
<p>% ab -k -n 100 http://sputnik.freewisdom.org/
Document Length: 15118 bytes
Requests per second: 0.78 [#/sec] (mean)
Time per request: 1274.200 [ms] (mean)</p>
<p>For comparison, here are the Nanoki numbers:</p>
<p>Nginx -> HTTP -> Nanoki</p>
<p>% ab -n 100 http://svr225.stepx.com:3388/drama
Document Length: 22601 bytes
Requests per second: 2.09 [#/sec] (mean)
Time per request: 477.961 [ms] (mean)</p>
<p>Not sure why the one to two difference here (0.7 vs. 2.09). Perhaps <br/>
the CGI overhead on the Sputnik side, versus plain HTTP on the Nanoki <br/>
side?</p>
<p>One way or another, using a persistent connection improve things a bit:</p>
<p>% ab -k -n 100 http://svr225.stepx.com:3388/drama
Document Length: 22601 bytes
Requests per second: 7.15 [#/sec] (mean)
Time per request: 139.844 [ms] (mean)</p>
<p>Unfortunately, the Apache instance fronting Sputnik is not set to <br/>
handle persistent connection, so no gain there.</p>
<p>HTH.</p>
<p>Cheers,</p>
<p>--
PA.
http://alt.textdrive.com/nanoki/</p>
<hr/>
<p>Sputnik-list mailing list
Sputnik-list@lists.luaforge.net
http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</p>
<p>From sputnik-list-bounces@lists.luaforge.net Fri Jan 30 08:55:49 2009
Received: from pop.gmail.com (ag-in-f109.google.com [72.14.247.109])</p>
<pre><code>by localhost (mpop-1.0.11) with POP3
for <yuri>; Fri, 30 Jan 2009 08:55:49 +0000
</code></pre>
<p>Delivered-To: sputnik.list.archiver@gmail.com
Received: by 10.142.161.20 with SMTP id j20cs1393452wfe;</p>
<pre><code> Thu, 15 Jan 2009 14:29:45 -0800 (PST)
</code></pre>
<p>Received: by 10.100.122.8 with SMTP id u8mr1518771anc.131.1232058584764;</p>
<pre><code> Thu, 15 Jan 2009 14:29:44 -0800 (PST)
</code></pre>
<p>Return-Path: <a href="mailto:sputnik-list-bounces@lists.luaforge.net">sputnik-list-bounces@lists.luaforge.net</a>
Received: from mail.luaforge.net (www.luaforge.net [147.65.1.201])</p>
<pre><code> by mx.google.com with ESMTP id c29si901103anc.49.2009.01.15.14.29.30;
Thu, 15 Jan 2009 14:29:44 -0800 (PST)
</code></pre>
<p>Received-SPF: pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) client-ip=147.65.1.201;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of sputnik-list-bounces@lists.luaforge.net designates 147.65.1.201 as permitted sender) smtp.mail=sputnik-list-bounces@lists.luaforge.net; dkim=neutral (body hash did not verify) header.i=@gmail.com
Received: from localhost ([127.0.0.1] helo=localhost.localdomain)</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50)
id 1LNcXj-0005mV-ID; Thu, 15 Jan 2009 22:26:35 -0200
</code></pre>
<p>Received: from yw-out-2324.google.com ([74.125.46.30])</p>
<pre><code>by mail.luaforge.net with esmtp (Exim 4.50) id 1LNcXh-0005mQ-I9
for sputnik-list@lists.luaforge.net; Thu, 15 Jan 2009 22:26:33 -0200
</code></pre>
<p>Received: by yw-out-2324.google.com with SMTP id 2so504878ywt.89</p>
<pre><code>for <sputnik-list@lists.luaforge.net>;
Thu, 15 Jan 2009 14:29:18 -0800 (PST)
</code></pre>
<p>DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;</p>
<pre><code>h=domainkey-signature:received:received:message-id:date:from:to
:subject:cc:in-reply-to:mime-version:content-type
:content-transfer-encoding:content-disposition:references;
bh=ceIU4aS2nk+vbnlTpq9tv/ek96+4QVsUZtxPDL7BgSk=;
b=IrBpHjyBNfL8hWKODAcIMR7T71XJ2+W/XNsSDrRnN8FugkvaKCPcajYeO32v6Ib8e2
QETZ6EnhkExVMzYwZtKuvNRccGs64vn14ovgpw5OUIC+f0bj0Iv5BglqqF1HGVAOQnZ5
vFucXo+pagKJTMxsfoaj0WHC7AoXfBWHnv2tQ=
</code></pre>
<p>DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma;</p>
<pre><code>h=message-id:date:from:to:subject:cc:in-reply-to:mime-version
:content-type:content-transfer-encoding:content-disposition
:references;
b=nXRAyvskwpX9PJ7DbHf7MmZZ74bBJ3BamDg9ZWnlIuRvVTv0bvr11E6LOuf0Q0NPNU
opS0l7G2L91uQ51iKPW2U1qpVH6UWNVS1fLOJD8b8gqSoxAFcRISHHm6l5gmL0dRH9fh
yTQzmGA7bwBoVSt07F05FxYSEmc9h/i/O+ahg=
</code></pre>
<p>Received: by 10.150.98.18 with SMTP id v18mr4798637ybb.169.1232058557779;</p>
<pre><code>Thu, 15 Jan 2009 14:29:17 -0800 (PST)
</code></pre>
<p>Received: by 10.150.218.6 with HTTP; Thu, 15 Jan 2009 14:29:17 -0800 (PST)
Message-ID: <a href="mailto:5fe281d40901151429n12ba6a27gf62e4f2479e9c1f5@mail.gmail.com">5fe281d40901151429n12ba6a27gf62e4f2479e9c1f5@mail.gmail.com</a>
Date: Thu, 15 Jan 2009 22:29:17 +0000
From: "Jim Whitehead II" <a href="mailto:jnwhiteh@gmail.com">jnwhiteh@gmail.com</a>
To: "Petite Abeille" <a href="mailto:petite.abeille@gmail.com">petite.abeille@gmail.com</a>
Subject: Re: [Sputnik-list] speeding up sputnik
In-Reply-To: <a href="mailto:777B6213-62D5-497C-B8C4-059C24C3AA42@gmail.com">777B6213-62D5-497C-B8C4-059C24C3AA42@gmail.com</a>
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
References: <a href="mailto:fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com">fa4efbc00901110908k5f5fa3ebw46142dbe2cc7bc43@mail.gmail.com</a></p>
<pre><code><777B6213-62D5-497C-B8C4-059C24C3AA42@gmail.com>
</code></pre>
<p>Cc: Sputnik <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
X-BeenThere: sputnik-list@lists.luaforge.net
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "An all-purpose list for now." <sputnik-list.lists.luaforge.net>
List-Unsubscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=unsubscribe>
</code></pre>
<p>List-Archive: <a href="http://lists.luaforge.net/pipermail/sputnik-list">http://lists.luaforge.net/pipermail/sputnik-list</a>
List-Post: <a href="mailto:sputnik-list@lists.luaforge.net">sputnik-list@lists.luaforge.net</a>
List-Help: <a href="mailto:sputnik-list-request@lists.luaforge.net?subject=help">sputnik-list-request@lists.luaforge.net?subject=help</a>
List-Subscribe: <a href="http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list">http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</a>,</p>
<pre><code><mailto:sputnik-list-request@lists.luaforge.net?subject=subscribe>
</code></pre>
<p>Sender: sputnik-list-bounces@lists.luaforge.net
Errors-To: sputnik-list-bounces@lists.luaforge.net</p>
<p>On Thu, Jan 15, 2009 at 9:57 PM, Petite Abeille
<a href="mailto:petite.abeille@gmail.com">petite.abeille@gmail.com</a> wrote:</p>
<blockquote>
<p>On Jan 11, 2009, at 6:08 PM, Yuri Takhteyev wrote:</p>
<blockquote>
<p>A list member who wanted to stay unnamed pointed out that Sputnik's
performance can be improved quite a bit</p>
</blockquote>
<p>For what it's worth, here are some basic numbers from ApacheBench:</p>
<p>Apache -> CGI -> Sputnik</p>
<p>% ab -k -n 100 http://sputnik.freewisdom.org/
Document Length: 15118 bytes
Requests per second: 0.78 [#/sec] (mean)
Time per request: 1274.200 [ms] (mean)</p>
</blockquote>
<p>Some comparisons against a real production site that is running
Sputnik. The main Sputnik site does not take advantage of many of the
rocks that are available when running a real site:</p>
<p>% ab -n 100 http://wowprogramming.com/
HTML transferred: 343800 bytes
Requests per second: 3.10 [#/sec] (mean)
Time per request: 322.890 [ms] (mean)</p>
<p>Keep in mind my site isn't as speedy as it could be, and it certainly
suffers on the more dynamic pages (the following numbers are without
any query or node caching):</p>
<p>% ab -k -n 100 http://wowprogramming.com/forums/development
HTML transferred: 2669900 bytes
Requests per second: 0.48 [#/sec] (mean)
Time per request: 2066.132 [ms] (mean)</p>
<blockquote>
<p>For comparison, here are the Nanoki numbers:</p>
<p>Nginx -> HTTP -> Nanoki</p>
<p>% ab -n 100 http://svr225.stepx.com:3388/drama
Document Length: 22601 bytes
Requests per second: 2.09 [#/sec] (mean)
Time per request: 477.961 [ms] (mean)</p>
<p>Not sure why the one to two difference here (0.7 vs. 2.09). Perhaps the CGI
overhead on the Sputnik side, versus plain HTTP on the Nanoki side?</p>
</blockquote>
<p>There is a massive complexity difference between Nanoki and Sputnik
which is partially shown in the above benchmarks.
http://wowprogramming.com/ is able to do the following using Sputnik:</p>
<ul>
<li>Serve forums for discussion (rudimentary, but they work)</li>
<li>Generate API documentation and listings dynamically from Lua tables</li>
<li>Act as an AJAX Lua interpreter providing a Lua command-line on the web</li>
<li>Convert .BMP format images to .PNG</li>
</ul>
<p>and the list continues on. The conceptual base of Sputnik is a high
feature 'node' that includes full inheritance. You pay with a bit of
complexity for flexibility in implementation. I would make the
statement that although Nanoki and Sputnik have both been called a
"wiki", the latter is a wiki only in how it's used in its default
state.</p>
<blockquote>
<p>One way or another, using a persistent connection improve things a bit:</p>
<p>% ab -k -n 100 http://svr225.stepx.com:3388/drama
Document Length: 22601 bytes
Requests per second: 7.15 [#/sec] (mean)
Time per request: 139.844 [ms] (mean)</p>
<p>Unfortunately, the Apache instance fronting Sputnik is not set to handle
persistent connection, so no gain there.</p>
</blockquote>
<p>Here are all of the numbers, for comparison. You can see that Nanoki
with keep-alive wins by quite a bit which is to be expected.</p>
<hr/>
<p>% ab -n 100 http://wowprogramming.com/
HTML transferred: 343800 bytes
Requests per second: 3.08 [#/sec] (mean)</p>
<h1>Time per request: 324.296 [ms] (mean)</h1>
<p>% ab -k -n 100 http://wowprogramming.com/
HTML transferred: 343800 bytes
Requests per second: 4.68 [#/sec] (mean)</p>
<h1>Time per request: 213.586 [ms] (mean)</h1>
<p>% ab -n 100 http://svr225.stepx.com:3388/drama
HTML transferred: 2260100 bytes
Requests per second: 3.39 [#/sec] (mean)</p>
<h1>Time per request: 294.658 [ms] (mean)</h1>
<p>% ab -k -n 100 http://svr225.stepx.com:3388/drama
HTML transferred: 2260100 bytes
Requests per second: 11.64 [#/sec] (mean)</p>
<h1>Time per request: 85.921 [ms] (mean)</h1>
<ul>
<li>Jim</li>
</ul>
<hr/>
<p>Sputnik-list mailing list
Sputnik-list@lists.luaforge.net
http://lists.luaforge.net/cgi-bin/mailman/listinfo/sputnik-list</p>