<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments for Arek Zen</title>
	<atom:link href="http://www.zenebo.com/word/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zenebo.com/word</link>
	<description>Day in the life of a coder  &#124;   Aspicio.meum. by Arek Bochinski</description>
	<pubDate>Wed, 10 Mar 2010 13:16:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on Atoi() or not to Atoi() by Arek (admin)</title>
		<link>http://www.zenebo.com/word/tools/atoi-or-not-to-atoi/comment-page-1/#comment-3145</link>
		<dc:creator>Arek (admin)</dc:creator>
		<pubDate>Sat, 26 Sep 2009 19:31:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=14#comment-3145</guid>
		<description>@Pierre

Trulink G-WAN looks like a very interesting project Pierre. I like it's approach to producing dynamic content via c - servlets .</description>
		<content:encoded><![CDATA[<p>@Pierre</p>
<p>Trulink G-WAN looks like a very interesting project Pierre. I like it&#8217;s approach to producing dynamic content via c - servlets .</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Atoi() or not to Atoi() by Pierre</title>
		<link>http://www.zenebo.com/word/tools/atoi-or-not-to-atoi/comment-page-1/#comment-3144</link>
		<dc:creator>Pierre</dc:creator>
		<pubDate>Sat, 26 Sep 2009 18:06:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=14#comment-3144</guid>
		<description>Hello Arek,

Your code would be faster (less and faster operators, less dereferencing) like this:

int matoi(char *s) {

   int res=0, n=1;
   unsigned int c;

   if(*c=='-'){n=-1;*s++;}

   //while (*s &#62;= '0' &#38;&#38; *s &#60;= '9')
   //   res = res * 10 + *s++ - '0';

   while((unsigned int)(c=*s++-'0')&#60;10u) 
      res=res*10+c;

   return res*n;
}

That's with this kind of optimizations that TrustLeap G-WAN manages to be 7x faster than nginx and 16x faster than Apache.</description>
		<content:encoded><![CDATA[<p>Hello Arek,</p>
<p>Your code would be faster (less and faster operators, less dereferencing) like this:</p>
<p>int matoi(char *s) {</p>
<p>   int res=0, n=1;<br />
   unsigned int c;</p>
<p>   if(*c==&#8217;-'){n=-1;*s++;}</p>
<p>   //while (*s &gt;= &#8216;0&#8242; &amp;&amp; *s &lt;= &#8216;9&#8242;)<br />
   //   res = res * 10 + *s++ - &#8216;0&#8242;;</p>
<p>   while((unsigned int)(c=*s++-&#8217;0&#8242;)&lt;10u)<br />
      res=res*10+c;</p>
<p>   return res*n;<br />
}</p>
<p>That&#8217;s with this kind of optimizations that TrustLeap G-WAN manages to be 7x faster than nginx and 16x faster than Apache.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Unreal Tournament 3 resource package explorer! by raddudu</title>
		<link>http://www.zenebo.com/word/tools/unreal-tournament-3-resource-package-explorer/comment-page-1/#comment-3140</link>
		<dc:creator>raddudu</dc:creator>
		<pubDate>Wed, 23 Sep 2009 15:10:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=1#comment-3140</guid>
		<description>Here is a source code of a similar software.....

http://thehackisback.com/spartan018/UPK_Info_Src.rar</description>
		<content:encoded><![CDATA[<p>Here is a source code of a similar software&#8230;..</p>
<p><a href="http://thehackisback.com/spartan018/UPK_Info_Src.rar" rel="nofollow">http://thehackisback.com/spartan018/UPK_Info_Src.rar</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lighttz - a simple and fast web server by inreb</title>
		<link>http://www.zenebo.com/word/asynchronous-programming/lighttz-a-simple-and-fast-web-server/comment-page-1/#comment-1398</link>
		<dc:creator>inreb</dc:creator>
		<pubDate>Thu, 21 May 2009 12:45:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=10#comment-1398</guid>
		<description>I didn't try nginx on linux jet, but but on freebsd it is really efficient. I couldn't ever get it to use more than 10% cpu (user) without keep-alive.

Some hints about your testing:

nginx has a feature to serve an empty 1x1 transparent gif from memory. the other servers might have memory caching or similar capabilities making the comparison more interesting.

apache is probably not interesting at all for a comparison, because it's architecture is focused on hosting "low-tech" scripting engines like php, which has quite different needs.

user cpu usage would be interesting to report, as we want to know how much time is spent in the application code.

thttpd would be an interesting candidate to compare against, as it also doesn't support keep-alive requests.</description>
		<content:encoded><![CDATA[<p>I didn&#8217;t try nginx on linux jet, but but on freebsd it is really efficient. I couldn&#8217;t ever get it to use more than 10% cpu (user) without keep-alive.</p>
<p>Some hints about your testing:</p>
<p>nginx has a feature to serve an empty 1&#215;1 transparent gif from memory. the other servers might have memory caching or similar capabilities making the comparison more interesting.</p>
<p>apache is probably not interesting at all for a comparison, because it&#8217;s architecture is focused on hosting &#8220;low-tech&#8221; scripting engines like php, which has quite different needs.</p>
<p>user cpu usage would be interesting to report, as we want to know how much time is spent in the application code.</p>
<p>thttpd would be an interesting candidate to compare against, as it also doesn&#8217;t support keep-alive requests.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lighttz - a simple and fast web server by roger</title>
		<link>http://www.zenebo.com/word/asynchronous-programming/lighttz-a-simple-and-fast-web-server/comment-page-1/#comment-778</link>
		<dc:creator>roger</dc:creator>
		<pubDate>Thu, 23 Apr 2009 13:29:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=10#comment-778</guid>
		<description>Here's nginx's response to this:
http://www.ruby-forum.com/topic/142137#new

"Also note that lighttz does not read file at all each request." (and that nginx might be tunable to come to similar speeds).
Cheers!
-=r</description>
		<content:encoded><![CDATA[<p>Here&#8217;s nginx&#8217;s response to this:<br />
<a href="http://www.ruby-forum.com/topic/142137#new" rel="nofollow">http://www.ruby-forum.com/topic/142137#new</a></p>
<p>&#8220;Also note that lighttz does not read file at all each request.&#8221; (and that nginx might be tunable to come to similar speeds).<br />
Cheers!<br />
-=r</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lighttz - a simple and fast web server by Marcus</title>
		<link>http://www.zenebo.com/word/asynchronous-programming/lighttz-a-simple-and-fast-web-server/comment-page-1/#comment-316</link>
		<dc:creator>Marcus</dc:creator>
		<pubDate>Mon, 23 Feb 2009 20:30:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=10#comment-316</guid>
		<description>I get the feeling the issue is related to TCP Keepalive, which I think HTTPerf uses automatically.  I've been trying to add Keepalive support to lighttz, but can't seem to get it working. (setsockopt...)

Any ideas?</description>
		<content:encoded><![CDATA[<p>I get the feeling the issue is related to TCP Keepalive, which I think HTTPerf uses automatically.  I&#8217;ve been trying to add Keepalive support to lighttz, but can&#8217;t seem to get it working. (setsockopt&#8230;)</p>
<p>Any ideas?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lighttz - a simple and fast web server by Marcus</title>
		<link>http://www.zenebo.com/word/asynchronous-programming/lighttz-a-simple-and-fast-web-server/comment-page-1/#comment-315</link>
		<dc:creator>Marcus</dc:creator>
		<pubDate>Mon, 23 Feb 2009 15:21:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=10#comment-315</guid>
		<description>I just tried Lighttz, and it gave some pleasingly fast results using ab.  However, I tried using HTTPerf to test the output, and it would only return as many requests as the --num-conns=X option. e.g. if you set --num-conns=5, you get 5 2xx responses, then it quits.

Do you know why this happens?  Does it have something to do with not closing connections properly?

Thanks.</description>
		<content:encoded><![CDATA[<p>I just tried Lighttz, and it gave some pleasingly fast results using ab.  However, I tried using HTTPerf to test the output, and it would only return as many requests as the &#8211;num-conns=X option. e.g. if you set &#8211;num-conns=5, you get 5 2xx responses, then it quits.</p>
<p>Do you know why this happens?  Does it have something to do with not closing connections properly?</p>
<p>Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lighttz - a simple and fast web server by cocobear</title>
		<link>http://www.zenebo.com/word/asynchronous-programming/lighttz-a-simple-and-fast-web-server/comment-page-1/#comment-300</link>
		<dc:creator>cocobear</dc:creator>
		<pubDate>Sat, 07 Feb 2009 15:13:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=10#comment-300</guid>
		<description>gcc -LLIBDIR -o lighttz lighttz.c -lev

I should use "-LLIBDIR" flag, else:

[cocobear@cocobear Download]$ ./lighttz 
./lighttz: error while loading shared libraries: libev.so.3: cannot open shared object file: No such file or directory</description>
		<content:encoded><![CDATA[<p>gcc -LLIBDIR -o lighttz lighttz.c -lev</p>
<p>I should use &#8220;-LLIBDIR&#8221; flag, else:</p>
<p>[cocobear@cocobear Download]$ ./lighttz<br />
./lighttz: error while loading shared libraries: libev.so.3: cannot open shared object file: No such file or directory</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Unreal Tournament 3 resource package explorer! by m35</title>
		<link>http://www.zenebo.com/word/tools/unreal-tournament-3-resource-package-explorer/comment-page-1/#comment-299</link>
		<dc:creator>m35</dc:creator>
		<pubDate>Fri, 23 Jan 2009 07:48:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=1#comment-299</guid>
		<description>I see it has been over 8 months since you've mentioned anything about this. Would is be possible to get your source code please if no further updates will be made?</description>
		<content:encoded><![CDATA[<p>I see it has been over 8 months since you&#8217;ve mentioned anything about this. Would is be possible to get your source code please if no further updates will be made?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lighttz - a simple and fast web server by admin</title>
		<link>http://www.zenebo.com/word/asynchronous-programming/lighttz-a-simple-and-fast-web-server/comment-page-1/#comment-167</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Tue, 14 Oct 2008 16:49:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.zenebo.com/word/?p=10#comment-167</guid>
		<description>Joshua, that is a linker error.
1. You have to install libev . Download the latest source code for LibEv , do a makefile compile and install .

The linker should then find the compiled libev in your lib folder. Depending on the system , it may be located in : /usr/local/lib 

The compiled .so shared object will be found when given the -lev flag at compile time .

If you encounter errors with dynamic linking, you can set a search path to the directory where your libev resides. Let's say that it is in /usr/local/lib . You could tell the linker to search that directory by typing this in command line:

LD_RUN_PATH=/usr/local/lib
export LD_RUN_PATH


Arek Bochinski</description>
		<content:encoded><![CDATA[<p>Joshua, that is a linker error.<br />
1. You have to install libev . Download the latest source code for LibEv , do a makefile compile and install .</p>
<p>The linker should then find the compiled libev in your lib folder. Depending on the system , it may be located in : /usr/local/lib </p>
<p>The compiled .so shared object will be found when given the -lev flag at compile time .</p>
<p>If you encounter errors with dynamic linking, you can set a search path to the directory where your libev resides. Let&#8217;s say that it is in /usr/local/lib . You could tell the linker to search that directory by typing this in command line:</p>
<p>LD_RUN_PATH=/usr/local/lib<br />
export LD_RUN_PATH</p>
<p>Arek Bochinski</p>
]]></content:encoded>
	</item>
</channel>
</rss>
