<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Steven Harms &#187; cherokee</title>
	<atom:link href="http://www.sharms.org/blog/tag/cherokee/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sharms.org/blog</link>
	<description>Life, Linux and Technology</description>
	<lastBuildDate>Sun, 28 Aug 2011 18:02:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Cherokee / Django tip: Timeout value</title>
		<link>http://www.sharms.org/blog/2009/05/cherokee-django-tip-timeout-value/</link>
		<comments>http://www.sharms.org/blog/2009/05/cherokee-django-tip-timeout-value/#comments</comments>
		<pubDate>Tue, 12 May 2009 20:40:29 +0000</pubDate>
		<dc:creator>sharms</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[cherokee]]></category>
		<category><![CDATA[django]]></category>

		<guid isPermaLink="false">http://www.sharms.org/blog/2009/05/12/cherokee-django-tip-timeout-value/</guid>
		<description><![CDATA[The default Cherokee timeout value is 15 seconds. I write server control dashboards which may have views which take longer than 15 seconds to render because they launch processes etc. Using Jquery / Ajax, I noticed these processes would spawn a bunch. This is because the of the default cherokee timeout. I increased this to [...]


Related posts:<ol><li><a href='http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/' rel='bookmark' title='Permanent Link: The Cherokee Webserver: Great choice for VPS&#039;s'>The Cherokee Webserver: Great choice for VPS&#039;s</a></li>
<li><a href='http://www.sharms.org/blog/2009/02/the-cherokee-webserver/' rel='bookmark' title='Permanent Link: The Cherokee Webserver'>The Cherokee Webserver</a></li>
<li><a href='http://www.sharms.org/blog/2009/06/python-threads/' rel='bookmark' title='Permanent Link: Python threads'>Python threads</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>The default Cherokee timeout value is 15 seconds.  I write server control dashboards which may have views which take longer than 15 seconds to render because they launch processes etc.  Using Jquery / Ajax, I noticed these processes would spawn a bunch.  This is because the of the default cherokee timeout.  I increased this to 2400 seconds and now my problem went away.  Hope that helps someone.</p>


<p>Related posts:<ol><li><a href='http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/' rel='bookmark' title='Permanent Link: The Cherokee Webserver: Great choice for VPS&#039;s'>The Cherokee Webserver: Great choice for VPS&#039;s</a></li>
<li><a href='http://www.sharms.org/blog/2009/02/the-cherokee-webserver/' rel='bookmark' title='Permanent Link: The Cherokee Webserver'>The Cherokee Webserver</a></li>
<li><a href='http://www.sharms.org/blog/2009/06/python-threads/' rel='bookmark' title='Permanent Link: Python threads'>Python threads</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.sharms.org/blog/2009/05/cherokee-django-tip-timeout-value/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Cherokee Webserver: Great choice for VPS&#039;s</title>
		<link>http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/</link>
		<comments>http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 17:16:02 +0000</pubDate>
		<dc:creator>sharms</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[cherokee]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://www.sharms.org/blog/?p=406</guid>
		<description><![CDATA[Recently I upgraded my shared hosting plan to a VPS (Virtual Private Server). Part of the reason is that when your blog gets enough hits, WordPress and MySQL become increasingly demanding. My page load times were around 8 seconds previously. Since switching to a VPS plan, I have decreased that to 1-2s which is much [...]


Related posts:<ol><li><a href='http://www.sharms.org/blog/2009/02/the-cherokee-webserver/' rel='bookmark' title='Permanent Link: The Cherokee Webserver'>The Cherokee Webserver</a></li>
<li><a href='http://www.sharms.org/blog/2009/05/cherokee-django-tip-timeout-value/' rel='bookmark' title='Permanent Link: Cherokee / Django tip: Timeout value'>Cherokee / Django tip: Timeout value</a></li>
<li><a href='http://www.sharms.org/blog/2008/08/haproxy-packages/' rel='bookmark' title='Permanent Link: Haproxy packages'>Haproxy packages</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Recently I upgraded my shared hosting plan to a VPS (Virtual Private Server).  Part of the reason is that when your blog gets enough hits, WordPress and MySQL become increasingly demanding.  My page load times were around 8 seconds previously.  Since switching to a VPS plan, I have decreased that to 1-2s which is much more acceptable.  What makes load time interesting is that major internet sites see people turn away if load times are high.</p>
<p><em>&#8220;For Google an increase in page load time from 0.4 second to 0.9 seconds decreased traffic and ad revenues by 20%. For Amazon every 100 ms increase in load times decreased sales with 1%.&#8221;</em><sup><a href="http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/#footnote_0_406" id="identifier_0_406" class="footnote-link footnote-identifier-link" title="Gabriel Svennerberg&amp;#8217;s blog">1</a></sup></p>
<p>This suggests to me that I had better get page load time under control, or my blog won&#8217;t reach many people on the internet.  Since I already was paying for shared hosting, the jump up to a VPS was not much more money.  The result is fantastic though, as I get a server with root access, and better yet it runs on Ubuntu.</p>
<p>The Cherokee website provides a Benchmarks page<sup><a href="http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/#footnote_1_406" id="identifier_1_406" class="footnote-link footnote-identifier-link" title="Cherokee Benchmarks">2</a></sup> which covers Cherokee being tested against Apache, Lighttpd and Nginx.  Cherokee always does really well in these bench marks, and was designed with a focus on security.  My website, which gets over 1000 unique visitors a day, with WordPress / MySQL / Cherokee only uses 119 megabytes of ram on my VPS.  Cherokee itself is only using 10 megabytes, which shows just how lean it is.  In addition to that, it also services requests very efficiently:</p>
<div id="attachment_411" class="wp-caption aligncenter" style="width: 442px"><img src="http://www.sharms.org/blog/wp-content/uploads/web-servers-benchmark-20080819.jpg" alt="Requests per second with 20 concurrent clients" title="Cherokee Webserver Performance Graph" width="432" height="396" class="size-full wp-image-411" /><p class="wp-caption-text">Requests per second with 20 concurrent clients</p></div>
<p>Another factor which pushed me to Cherokee is the way Cherokee is configured.  It provides a great, easy to understand / intuitive web interface for configuration.  I never had to open up a .conf file and edit it, and yet the configuration it generated is still in plain text and easy to understand should I need to.  That is exactly what the webserver world has needed for a long time.</p>
<p>In the next few weeks I will follow up with a detailed Cherokee installation / configuration tutorial and some other fun things I have done with the VPS.  If you want to check out Cherokee, their official project website is at: <a href="http://www.cherokee-project.com">http://www.cherokee-project.com</a></p>
<ol class="footnotes"><li id="footnote_0_406" class="footnote"><a href="http://www.svennerberg.com/2008/12/page-load-times-vs-conversion-rates/">Gabriel Svennerberg&#8217;s blog</a></li><li id="footnote_1_406" class="footnote"><a href="http://www.cherokee-project.com/benchmarks.html">Cherokee Benchmarks</a></li></ol>

<p>Related posts:<ol><li><a href='http://www.sharms.org/blog/2009/02/the-cherokee-webserver/' rel='bookmark' title='Permanent Link: The Cherokee Webserver'>The Cherokee Webserver</a></li>
<li><a href='http://www.sharms.org/blog/2009/05/cherokee-django-tip-timeout-value/' rel='bookmark' title='Permanent Link: Cherokee / Django tip: Timeout value'>Cherokee / Django tip: Timeout value</a></li>
<li><a href='http://www.sharms.org/blog/2008/08/haproxy-packages/' rel='bookmark' title='Permanent Link: Haproxy packages'>Haproxy packages</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>The Cherokee Webserver</title>
		<link>http://www.sharms.org/blog/2009/02/the-cherokee-webserver/</link>
		<comments>http://www.sharms.org/blog/2009/02/the-cherokee-webserver/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 16:15:08 +0000</pubDate>
		<dc:creator>Steven Harms</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[bzr]]></category>
		<category><![CDATA[cherokee]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[webserver]]></category>

		<guid isPermaLink="false">http://www.sharms.org/blog/?p=348</guid>
		<description><![CDATA[After seeing some of the performance graphs on Alvaro&#8217;s blog, I decided to give Cherokee a shot with a project I am working on. The project I am working on has a web browser on kiosk machines, and runs Django on the backend. I was in need of a fast, secure web server. I have [...]


Related posts:<ol><li><a href='http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/' rel='bookmark' title='Permanent Link: The Cherokee Webserver: Great choice for VPS&#039;s'>The Cherokee Webserver: Great choice for VPS&#039;s</a></li>
<li><a href='http://www.sharms.org/blog/2009/02/python-commands-module/' rel='bookmark' title='Permanent Link: Python Commands Module'>Python Commands Module</a></li>
<li><a href='http://www.sharms.org/blog/2009/03/migrated-to-a-vps/' rel='bookmark' title='Permanent Link: Migrated to a VPS'>Migrated to a VPS</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_349" class="wp-caption alignleft" style="width: 151px"><img src="http://www.sharms.org/blog/wp-content/uploads/indiankid.png" alt="Cherokee Webserver Logo" title="indiankid" width="141" height="165" class="size-full wp-image-349" /><p class="wp-caption-text">Cherokee Webserver Logo</p></div>After seeing some of the <a href="http://www.alobbs.com/1353/The_fastest_and_best_designed_among_the_modern_web_servers.html">performance graphs on Alvaro&#8217;s blog</a>, I decided to give Cherokee a shot with a project I am working on.  The project I am working on has a web browser on kiosk machines, and runs Django on the backend.  I was in need of a fast, secure web server.  I have always used Apache in the past, and have used Nginx, so I figured I should investigate Cherokee.<br />
<span id="more-348"></span><br />
<strong>Enter the Cherokee Web Server</strong><br />
Cherokee has performed great as an embedded webserver which serves my django project.  It takes about 12Mb of ram, and deals with multiple simultaneous requests near instantly.  This allows me to add features using Jquery that I would usually be afraid to bog down the system with.  You can check out the home page at: <a href="http://www.cherokee-project.com">http://www.cherokee-project.com</a></p>
<p><strong>Configuration</strong><br />
One of the best features is the web based configuration utility.  This utility allows everything to be administered from a web GUI instead of the normal command line editing.</p>
<div id="attachment_350" class="wp-caption aligncenter" style="width: 734px"><img src="http://www.sharms.org/blog/wp-content/uploads/admin_index.png" alt="Cherokee Admin Screenshot" title="admin_index" width="724" height="453" class="size-full wp-image-350" /><p class="wp-caption-text">Cherokee Admin Screenshot</p></div>
<p>The best part about this is, the file it outputs is also easy to tweak from the command line.  The syntax is very terse, which makes configuration file management a breeze.  I take my configuration file, and put it inside my project repository, using the <a href="http://www.bazaar-vcs.org">Bazaar Version Control System</a>.  This way I can keep track of the configurations and changes to them with ease.</p>
<p>The Cherokee admin also appears to be using Python, which I like since if I find a bug, I can much more readily diagnose it as the custom software I am developing is also in Python.</p>
<p><strong>Performance</strong><br />
Performance wise the pages load in what is perceived to be instantly.  My webservers are celeron boxes, with 1 gig of ram, running the <a href="http://www.gnome.org">Gnome Desktop Environment</a>.  These machines have most of their resources consumed already, so the performance I get is a testament to the carefully thought out design of Cherokee to have minimal overhead.</p>
<p><strong>Documentation</strong><br />
The Cherokee cookbook is fantastic for setting up a new webserver.  The documentation can be found at: <a href="http://www.cherokee-project.com/doc/">http://www.cherokee-project.com/doc/</a>.  You can find everything from using Django, load balancing, using mono / asp, to setting up a blog.  These recipes are very handy and easily understood.</p>
<p>If you have a new project, or even an old website, it is definitely worth giving Cherokee a look.  The Cherokee Project also provides packages for all major distributions, so you can download the .deb or .rpm at their website.</p>


<p>Related posts:<ol><li><a href='http://www.sharms.org/blog/2009/04/the-cherokee-webserver-great-choice-for-vpss/' rel='bookmark' title='Permanent Link: The Cherokee Webserver: Great choice for VPS&#039;s'>The Cherokee Webserver: Great choice for VPS&#039;s</a></li>
<li><a href='http://www.sharms.org/blog/2009/02/python-commands-module/' rel='bookmark' title='Permanent Link: Python Commands Module'>Python Commands Module</a></li>
<li><a href='http://www.sharms.org/blog/2009/03/migrated-to-a-vps/' rel='bookmark' title='Permanent Link: Migrated to a VPS'>Migrated to a VPS</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.sharms.org/blog/2009/02/the-cherokee-webserver/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

