<?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>AmmarkoV  `s  Personal Website &#187; HTTP</title>
	<atom:link href="http://ammar.gr/?feed=rss2&#038;tag=http" rel="self" type="application/rss+xml" />
	<link>http://ammar.gr</link>
	<description>I would love to change the world , but they won`t give me the source code</description>
	<lastBuildDate>Thu, 25 Oct 2012 11:53:41 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<item>
		<title>ETags 304 Not Modified and 200 OK headers..!</title>
		<link>http://ammar.gr/?p=520</link>
		<comments>http://ammar.gr/?p=520#comments</comments>
		<pubDate>Wed, 17 Oct 2012 16:01:04 +0000</pubDate>
		<dc:creator>Ammar Qammaz</dc:creator>
				<category><![CDATA[Post]]></category>
		<category><![CDATA[AmmarServer]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[Web Server]]></category>

		<guid isPermaLink="false">http://ammar.gr/?p=520</guid>
		<description><![CDATA[For the last couple of days I have been implementing ETags on AmmarServer which seem to be a nice way for cache handshaking ( and work very well with my internal server side caching mechanism ) .. To profile my server&#8217;s behaviour I am using chromium and the very handy Developer Tools that come integrated [...]]]></description>
			<content:encoded><![CDATA[<p>For the last couple of days I have been implementing <a href="http://en.wikipedia.org/wiki/HTTP_ETag">ETags</a> on <a href="https://github.com/AmmarkoV/AmmarServer">AmmarServer</a> which seem to be a nice way for cache handshaking ( and work very well with my internal server side caching mechanism )   ..</p>
<p>To profile my server&#8217;s behaviour I am using chromium and the very handy Developer Tools that come integrated in it , Especially the Network Timeline feature is great for debugging this sort of things.. <a href="http://redbot.org/?uri=http%3A%2F%2Fammar.gr%3A8080%2F">RedBot is also a very useful tool!</a> that I use for debugging HTTP handshakes..</p>
<p>Although my implementation isn&#8217;t ready yet I am getting some very weird results when I emmit 304 Not Changed responses illustrated in the screenshots bellow ..!</p>
<p>The screenshots are that big due to my dual 1080p screen setup <img src='http://ammar.gr/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p><a href="http://ammar.gr/wp-content/uploads/2012/10/apache_and_ammarserver_200_ok.png"><img src="http://ammar.gr/wp-content/uploads/2012/10/apache_and_ammarserver_200_ok-300x84.png" alt="Apache And AmmarServer both serving 200 OK responses.." title="Apache And AmmarServer both serving 200 OK responses.." width="300" height="84" class="alignnone size-medium wp-image-521" /></a></p>
<p><a href="http://ammar.gr/wp-content/uploads/2012/10/apache_and_ammarserver_304_and_200.png"><img src="http://ammar.gr/wp-content/uploads/2012/10/apache_and_ammarserver_304_and_200-300x84.png" alt="Apache and AmmarServer , AmmarServer emmiting 304 responses and Apache 200 OK " title="Apache and AmmarServer , AmmarServer emmiting 304 responses and Apache 200 OK " width="300" height="84" class="alignnone size-medium wp-image-522" /></a></p>
<p>I can&#8217;t seem to grasp the reason why a 304 response has such a large &#8220;Waiting Time&#8221; , Is it my Response header that is missing something , is it the whole  Keep Alive thing not being handled properly , or is the waiting time supposed to mean something else in the graph..<br />
How is it possible when only 200 byte headers get served that the response time is 4 times worse than when the full files get served from memory ?  </p>
<p>I haven&#8217;t still figured it out and it is driving me crazy , but I will get to the bottom of this <img src='http://ammar.gr/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  ..  </p>
<p><strong>UPDATE </strong><br />
After some tweaking around and with the help of <a href="http://redbot.org/?uri=http%3A%2F%2Fammar.gr%3A8080%2F">redbot</a> it turns out that the 304 Not Modified header should retransmit all of the original fields transmitted with the first &#8220;200 OK&#8221; message.. This means all of the E-Tag , Date etc fields.. I was missing out some of them so including them fixed the behaviour.. </p>
]]></content:encoded>
			<wfw:commentRss>http://ammar.gr/?feed=rss2&#038;p=520</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
