<?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>Life Scaling &#187; Load</title>
	<atom:link href="http://orensol.com/tag/load/feed/" rel="self" type="application/rss+xml" />
	<link>http://orensol.com</link>
	<description>Oren Solomianik's Blog</description>
	<lastBuildDate>Mon, 21 Jun 2010 08:10:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Apache mod_ssl Makes Your Clients Crawl Compared To Nginx SSL Module</title>
		<link>http://orensol.com/2009/07/27/apache-mod_ssl-makes-your-clients-crawl-compared-to-nginx-ssl-module/</link>
		<comments>http://orensol.com/2009/07/27/apache-mod_ssl-makes-your-clients-crawl-compared-to-nginx-ssl-module/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 07:39:26 +0000</pubDate>
		<dc:creator>Oren</dc:creator>
				<category><![CDATA[Browsers]]></category>
		<category><![CDATA[LAMP]]></category>
		<category><![CDATA[Nginx]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[CPU]]></category>
		<category><![CDATA[Load]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[TLS]]></category>

		<guid isPermaLink="false">http://orensol.com/?p=264</guid>
		<description><![CDATA[<p>The <a href="http://en.wikipedia.org/wiki/Transport_Layer_Security" target="_blank">SSL/TLS</a> process is a heavy one, it involves algorithm negotiation between client and server, key exchanges, cyphering, decyphering and authentication. But what&#8217;s surprising is, that the server you&#8217;re connecting to can directly influence the performance of your client and its CPU consumption.</p>
<p>I had a php command line process spawning child processes and [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://en.wikipedia.org/wiki/Transport_Layer_Security" target="_blank">SSL/TLS</a> process is a heavy one, it involves algorithm negotiation between client and server, key exchanges, cyphering, decyphering and authentication. But what&#8217;s surprising is, that the server you&#8217;re connecting to can directly influence the performance of your client and its CPU consumption.</p>
<p>I had a php command line process spawning child processes and connecting through SSL to a web server, in 2 scenarios. The first scenario was to an out of the box <a href="http://httpd.apache.org/docs/2.2/ssl/" target="_blank">Apache httpd server with mod_ssl</a>, and the second scenario was to an out of the box <a href="http://wiki.nginx.org/NginxHttpSslModule" target="_blank">Nginx with the SSL module</a>. Both were using the exact same box, and were &#8220;out of the box&#8221; meaning I used the default configuration for both.</p>
<p>In the first scenario I was able to spawn no more than 6 (!) php processes before the box running them began to show load, and the CPU queue started to fill up. Each php child was taking between 15%-30% cpu at any given moment.</p>
<p>In the second scenario, I was able to spawn 40 (!!) php child processes without the box being loaded. Each php child was taking around 1.5% cpu.</p>
<p>I&#8217;m no SSL expert, and there might be a way to configure Apache to inflict less load on the connecting client. There is also <a href="http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslsessioncache" target="_blank">SSLSessionCache</a> which might relieve load from both the server and the client. But the &#8220;out of the box&#8221; configuration shows that Nginx is a real winner again.</p>
<p>If you can, avoid SSL altogether. If not, terminate it at a front-end before proceeding to Apache.</p>
]]></content:encoded>
			<wfw:commentRss>http://orensol.com/2009/07/27/apache-mod_ssl-makes-your-clients-crawl-compared-to-nginx-ssl-module/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->