<br><br><div><span class="gmail_quote">On 3/19/07, <b class="gmail_sendername">Scott Hadfield</b> <<a href="mailto:hadsie@gmail.com">hadsie@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi All,<br><br>I've been thinking about a possible summer of code idea, but I'm not sure it will fly so I wanted to get some feedback.<br><br>The basic idea is to look into solutions for running Drupal simultaneously across multiple servers for the purposes of running extremely large/busy sites, for load balancing on multiple servers (both database and web servers), or just for high availability (if one server dies, another will kick in). The project would consist of developing and documenting ways that this can be accomplished and developing tools or other Drupal patches/modules that are needed to accomplish the various tasks.
<br><br>One of the main problems with this as a SoC proposal is that a large majority of what needs to be done here is OS/web server/database server specific. There would probably be a lot of Drupal specific stuff, but I'm not sure exactly how much.
<br><br>Even if this won't fly as a SoC project I am still be interested on working on this. What's already been done in this area? Maybe some of this has already been solved?</blockquote><div><br>I think this is a good idea for a project. Jeremy will be presenting many learnings from KernelTrap and the CivicSpace ASP at the Drupal Scalability workshop on Saturday. The Drupal community has learned a lot, in particular Gerhard has captured and tested significant performance and scalability improvements in building the
<a href="http://Drupal.org">Drupal.org</a> infrastructure.<br><br>Having an intern document all these learnings would be great asset for the community and help in the adoption of Drupal by businesses that ultimately ask the question, "Will Drupal scale?".
<br><br>CivicSpace has learned a lot about high availability and scalability in building our ASP and we'd be interested in sharing what we've learned, which we have documented fairly well. I'd be happy to make much of this available if we believed that work would receive good stewardship.
<br><br>Topics to consider:<br><br>Scaling<br>1) Scaling web servers horizontally. Shared file systems for horizontally scaling web servers.<br>2) Scaling databases.<br>3) Performance tuning queries. Configuring databases for load characteristics. Managing IO bottlenecks.
<br>4) Logging - managing logs for scalability and IO tuning<br><br>High Availability<br>4) Network availability - Bonding, CARP<br>5) Database fail over - replication with master and slaves<br>6) Restoration - text and binary database restoration, remote recovery
<br><br>I don't think there is anything with wrong with doing lots of research and then writing small amounts of code for tools where appropriate. My suspicion is that a well prepared project would win wide support and Google will support a project that has support of the mentoring organizations.
<br><br>Cheers,<br>Kieran<br><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;">Thanks for any feedback,<br><span class="sg">Scott
</span></blockquote></div><br><br clear="all"><br>-- <br>To strive, to seek, to find, and not to yield.<br>