<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
While this should not absolve the project from addressing the fundamental issues that report identifies (which are quite concerning, especially the extraordinary number of SQL queries being generated), I second the motion for caching the EAD and html output,
with the cache being updated whenever an underlying component of the cached output is updated.
<div class=""><br class="">
</div>
<div class="">It can be a bit tricky to implement, but many enterprise style web apps have this kind of feature, and there may even be an external library that can be incorporated to do it. (As a side note, we incorporated caching to archon at a certain point
in time, which dramatically cut page load time for long finding aids and EADs where the content had not been modified. We implemented it so the cache was updated whenever the public page for a modified resource was requested--which was not ideal, but at least
contained the problem the initial page load of a modified page.)</div>
<div class=""><br class="">
</div>
<div class="">Another suggestion I have is to add some performance data to the bottom of each page in the UI (which can be enabled with a configuration setting) along the lines of (Page generated in x seconds using x queries), so that it is possible to assess
performance issues on a running basis under multiple environments, which can function as an early warning system in testing new features or modifications—or as a quick way for the team to congratulate themselves when solving a persistent problem.<br class="">
<div class=""><br class="">
</div>
<div class="">Chris Prom</div>
<div class="">University of Illinois</div>
<div class="">
<div class=""><br class="">
</div>
<div class=""><br class="">
<div class=""><br class="">
</div>
<div class="">
<div>
<blockquote type="cite" class="">
<div class="">On Aug 27, 2015, at 10:36 AM, Jason Loeffler <<a href="mailto:j@minorscience.com" class="">j@minorscience.com</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div dir="ltr" class="">Kudos to Yale for engaging Percona. For small and very small organizations with limited or no in-house IT support, this kind of contribution is essential. Having experienced substantial latency on resource trees with only 3,000 records,
I
<div class=""><br class="">
</div>
<div class="">Chris, regarding benchmarking tools, I've used <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__launchpad.net_mysql-2Dtuning-2Dprimer&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=0GZvusRIq5YEacXko6vQC3PGETVe5AhepGb4XsBwVvU&e=" class="">
tuning-primer</a> and <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_akopytov_sysbench&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=uWUvOQVUkzlXblxwbs2YE-K43_t2r0T72oD4hk-abjw&e=" class="">
sysbench</a> alongside MySQLTuner for years with good success. Additionally I've deployed ASpace (and other projects) against
<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__mariadb.org_&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=NDSconlpArQ7ucTO1537AUvUHJVcqxw0BChhHcCtPng&e=" class="">
MariaDB</a> and Percona's own InnoDB drop-in replacement with the <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__www.percona.com_software_mysql-2Ddatabase_percona-2Dserver_xtradb&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=qcTLiPE6RJfYMExBCgXUa9yvYPJLSboGPgzTWbYGzOc&e=" class="">
Xtra DB storage engine</a>. No issues so far. </div>
<div class=""><br class="">
</div>
<div class="">For organizations with dedicated IT support, I highly recommend the
<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__www.percona.com_software_mysql-2Dtools_percona-2Dtoolkit&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=dc8ufJuyqLLtUNbbutaaxjO0vfizSzAz1kOJ8v3e2s0&e=" class="">
Percona toolkit </a>as a standard part of any deployment as a means to collect and analyze information about database-related problems. </div>
<div class=""><br class="">
</div>
<div class="">I'd be happy to describe how I've used these database distributions and tools in the ASpace context and outline the potential benefits. </div>
<div class=""><br class="">
</div>
<div class="">That said, having read the Percona report, I'm not entirely clear that database tuning yields much of a positive impact. The report bears this out. The section on "Alternatives" in the JRuby GitHub page seems most promising. I'm not a Java dev,
but this description seems very similar to using in-memory or file-based cache stores, like Memcache or Redis, in unthreaded applications (e.g. PHP). </div>
<div class="gmail_extra"><br clear="all" class="">
<div class="">
<div class="gmail_signature">
<div dir="ltr" class="">
<div class="">
<div class=""><font size="2" face="garamond, serif" style="background-color:rgb(255,255,255)" color="#666666" class="">Jason Loeffler</font></div>
<div class=""><font color="#666666" face="garamond, serif" class="">Technical Consultant | American Academy in Rome</font></div>
<div class=""><font color="#666666" face="garamond, serif" class="">Principal | Minor Science | Application Development & Metadata Strategy</font></div>
<div class=""><font size="2" face="garamond, serif" style="background-color:rgb(255,255,255)" color="#666666" class="">Brooklyn, New York</font></div>
</div>
<div class=""><br class="">
</div>
</div>
</div>
</div>
<br class="">
<div class="gmail_quote">On Wed, Aug 26, 2015 at 10:47 AM, Chris Fitzpatrick <span dir="ltr" class="">
<<a href="mailto:Chris.Fitzpatrick@lyrasis.org" target="_blank" class="">Chris.Fitzpatrick@lyrasis.org</a>></span> wrote:<br class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr" class="">
<div style="font-size: 12pt; background-color: rgb(255, 255, 255); font-family: Calibri, Arial, Helvetica, sans-serif;" class="">
<p class=""><br class="">
</p>
<p class=""><br class="">
</p>
<p class="">Hi Maureen,</p>
<p class=""><br class="">
</p>
<p class="">This is excellent. Percona is one of the premier MySQL experts, so this is great feedback.</p>
<p class=""><br class="">
</p>
<p class="">Also, I have a page describing some <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__archivesspace.github.io_archivesspace_user_tuning-2Darchivesspace_&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=w1fr9R-bpxicmWuR4qurQGSHMMP_pxkOZRfMMYKQ4OQ&e=" target="_blank" class="">
MySQL and application tuning suggestions.</a> <br class="">
</p>
<p class="">One thing that I suggest is to run a profiler on the MySQL DB server, which can give you some ideas on where to look for problem areas. I've been using MySQL Tuner for years (
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__mysqltuner.com_&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=ilPsD8s5bxhnho-xmV_bsfO2IN6FctFU_06Cm4zgxTA&e=" target="_blank" class="">
http://mysqltuner.com/)</a> but maybe there are some other things people are using? Any suggestions would help, and I can add them to the page ( or better yet send me a PR
<br class="">
</p>
<p class="">Also curious about various MySQL distributions ( Oracle, MariaDB, Percona, etc ) people are using? Are people using dedicated db servers, or clusters, or just having the db server on the same box as the application?
</p>
<p class=""><br class="">
</p>
<p class="">Lastly, it would be great if we could start work on supporting other DBs. I think there's a strong interests ( especially from smaller orgs ) for MS Server, but are others wanting Oracle or postgres?
<br class="">
</p>
<p class=""><br class="">
</p>
<p class="">best, chris. <br class="">
</p>
<p class=""><br class="">
</p>
<p class=""><br class="">
</p>
<p class=""><br class="">
</p>
<div class="">
<div name="divtagdefaultwrapper" class="">
<div class=""><font size="2" class="">
<div class="">Chris Fitzpatrick | <font size="2" class="">Developer, ArchivesSpace</font><br class="">
Skype: chrisfitzpat | Phone: <a href="tel:918.236.6048" value="+19182366048" target="_blank" class="">
918.236.6048</a><br class="">
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__archivesspace.org_&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=L26CpKlTR6X2dmSdnnbzHulcky_6J46BAhQAx2lKhEY&e=" target="_blank" class="">http://archivesspace.org/</a><br class="">
</div>
</font></div>
</div>
</div>
<br class="">
<br class="">
<div style="" class="">
<hr style="display:inline-block;width:98%" class="">
<div dir="ltr" class=""><font style="font-size:11pt" face="Calibri, sans-serif" class=""><b class="">From:</b>
<a href="mailto:archivesspace_users_group-bounces@lyralists.lyrasis.org" target="_blank" class="">
archivesspace_users_group-bounces@lyralists.lyrasis.org</a> <<a href="mailto:archivesspace_users_group-bounces@lyralists.lyrasis.org" target="_blank" class="">archivesspace_users_group-bounces@lyralists.lyrasis.org</a>> on behalf of Callahan, Maureen <<a href="mailto:maureen.callahan@yale.edu" target="_blank" class="">maureen.callahan@yale.edu</a>><br class="">
<b class="">Sent:</b> Wednesday, August 26, 2015 3:36 PM<br class="">
<b class="">To:</b> '<a href="mailto:archivesspace_users_group@lyralists.lyrasis.org" target="_blank" class="">archivesspace_users_group@lyralists.lyrasis.org</a>'<br class="">
<b class="">Subject:</b> [Archivesspace_Users_Group] More ArchivesSpace performance analysis -- this time, the database</font>
<div class=""> </div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Hi everyone,</div>
<p style="margin:0in 0in 0.0001pt;font-size:11pt;font-family:"Calibri","sans-serif"" class="">
</p>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
As I’ve reported before, we at Yale are in the middle of an aggressive period of analysis to diagnose some of the slow performance we’ve been seeing with ArchivesSpace. As part of this initiative, we’ve contracted with Percona, a firm that specializes in MySQL
database analysis. Their report (attached), includes a number of action items that we believe the ArchivesSpace community may find helpful. We hope that this will result in further improvements to the application.</div>
<p style="margin:0in 0in 0.0001pt;font-size:11pt;font-family:"Calibri","sans-serif"" class="">
</p>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Best wishes,</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Maureen</div>
<p style="margin:0in 0in 0.0001pt;font-size:11pt;font-family:"Calibri","sans-serif"" class="">
</p>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Maureen Callahan</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#404040" class="">Archivist, Metadata Specialist</span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#404040" class="">Manuscripts & Archives</span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#404040" class="">Yale University Library</span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#8496b0" class=""><a style="color:rgb(5,99,193);text-decoration:underline" href="mailto:maureen.callahan@yale.edu" target="_blank" class=""><span style="color:#8496b0" class="">maureen.callahan@yale.edu</span></a></span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#404040" class=""><a href="tel:203.432.3627" value="+12034323627" target="_blank" class="">203.432.3627</a></span></div>
<p style="margin:0in 0in 0.0001pt;font-size:11pt;font-family:"Calibri","sans-serif"" class="">
<span style="color:#7f7f7f" class=""> </span></p>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#404040" class="">Webpage:</span><span style="color:#7f7f7f" class="">
</span><span style="color:#8496b0" class=""><a style="color:rgb(5,99,193);text-decoration:underline" href="https://urldefense.proofpoint.com/v2/url?u=http-3A__web.library.yale.edu_mssa&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=il5kqPWzNKhOZRu6dbtSlEGZh3ivBOroSclNvHD2kbI&e=" target="_blank" class=""><span style="color:#8496b0" class="">web.library.yale.edu/mssa</span></a></span><span style="color:#7f7f7f" class=""></span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color:#404040" class="">Collections:</span><span style="color:#7f7f7f" class="">
</span><span style="color:#8496b0" class=""><a style="color:rgb(5,99,193);text-decoration:underline" href="https://urldefense.proofpoint.com/v2/url?u=http-3A__drs.library.yale.edu&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=A5eKQor7yHrRYelGeaAuYnq_9-BEsZBy6_fzNFCHV3I&e=" target="_blank" class=""><span style="color:#8496b0" class="">drs.library.yale.edu</span></a></span><span style="color:#7f7f7f" class=""></span></div>
<p style="margin:0in 0in 0.0001pt;font-size:11pt;font-family:"Calibri","sans-serif"" class="">
</p>
</div>
</div>
</div>
</div>
</div>
<br class="">
_______________________________________________<br class="">
Archivesspace_Users_Group mailing list<br class="">
<a href="mailto:Archivesspace_Users_Group@lyralists.lyrasis.org" class="">Archivesspace_Users_Group@lyralists.lyrasis.org</a><br class="">
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__lyralists.lyrasis.org_mailman_listinfo_archivesspace-5Fusers-5Fgroup&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=jGJMaTc-8I-z6_tkoj_Qyi4UF1KtYBfcz4s2Ly33jmw&m=sYxMTtfZU9rIKQ_pQ1HLrHeYPTcyoGJXudcMXK1pKUM&s=2HqTRngQzTLf7b73TbhCb4ol3DrdTXvz_H1cfi1XlRg&e=" rel="noreferrer" target="_blank" class="">http://lyralists.lyrasis.org/mailman/listinfo/archivesspace_users_group</a><br class="">
<br class="">
</blockquote>
</div>
<br class="">
</div>
</div>
_______________________________________________<br class="">
Archivesspace_Users_Group mailing list<br class="">
<a href="mailto:Archivesspace_Users_Group@lyralists.lyrasis.org" class="">Archivesspace_Users_Group@lyralists.lyrasis.org</a><br class="">
http://lyralists.lyrasis.org/mailman/listinfo/archivesspace_users_group<br class="">
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</div>
</body>
</html>