On 10/19/07, <b class="gmail_sendername">Jason Gross</b> &lt;<a href="mailto:jphgross@gmail.com">jphgross@gmail.com</a>&gt; wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I am evaluating memcached for our web farm and wanted to poll this<br>list for some experience in designing, deploying and maintaining it.<br>Specifically I want to analyze the overhead from a development /<br>resource and maintenance standpoint so that I can properly plan this
<br>effort. Would anyone on this list be willing to share their<br>experience with deploying memcached?</blockquote><div><br>I can answer some of your questions - my sysadmin has been nagging me for a year to look at memcached, and just last Friday I finally looked at it.&nbsp; A week later, we&#39;re going live with it on a high traffic site.
<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">1. Are there tools that exist to help analyze which queries should be<br>cached?
</blockquote><div><br>I&#39;m not aware of any tools for this.. I&#39;d start with the slowest or most common queries, remember the 80/20 rule, and in general, keep <a href="http://en.wikipedia.org/wiki/Amdahl%27s_law">Amdahl&#39;s Law
</a> in mind. <br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">2. What exists to monitoring and analyze for cache performance on a
<br>daily basis?</blockquote><div><br>Memcached keeps some internal stats (see the &quot;stats&quot; protocol command), and you can keep your own stats as well.<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
3. What level of effort was required to integrate memcached into the<br>application?</blockquote><div><br>Within 2 hours, we had our app running off memcached, including downloading and building the memcached server.&nbsp; Most of my time was then spent refactoring the code to support various cache settings, testing the Java memcached clients, load testing, etc.&nbsp; 
<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">4. What was the support overhead from a time and expertise standpoint<br>to maintain this?
</blockquote><div><br>Others who have run memcached can probably comment more (facebook has 200+ dedicated memcached&nbsp; servers, apparently).&nbsp; I expect the maintenance/admin time to be low, since memcached is so simple.&nbsp; It may be higher at the start, as we learn how to tweak it, etc.
<br></div></div><br><br>Overall, I&#39;m really excited that we&#39;re finally going to use memcached.&nbsp; The worst part is, the only reason we didn&#39;t use it a year ago is because we mistakenly thought that it didn&#39;t support multiple GET keys in one request.&nbsp; It definitely supports that now, and I read an article from 2004 that implies that it supported it then.&nbsp; 
<br><br>-Chris<br><br><br>