blob: 09ba7789f4cc5cae001301a7f582eda500c691cc [file] [log] [blame]
<!doctype html>
<html class="no-js" lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Improving our Subversion Services - Apache Infrastructure Website</title>
<link href="/css/bootstrap.min.css" rel="stylesheet">
<link href="/css/fontawesome.all.min.css" rel="stylesheet">
<link href="/css/headerlink.css" rel="stylesheet">
<script src="/highlight/highlight.min.js"></script> </head>
<body class="d-flex flex-column h-100">
<main class="flex-shrink-0">
<!-- nav bar -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark" aria-label="Fifth navbar example">
<div class="container-fluid">
<a class="navbar-brand" href="/"><img src="/images/feather.png" style="height: 32px;"/> Apache Infrastructure</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarADP" aria-controls="navbarADP" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarADP">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown" aria-expanded="false">About</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="/team.html">About the team</a></li>
<li><a class="dropdown-item" href="/roundtable.html">The Infrastructure Roundtable</a></li>
<li><a class="dropdown-item" href="/blog/">The Infrastructure Blog</a></li>
</ul>
</li>
<li class="nav-item">
<a class="nav-link" href="/policies.html">Policies</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown" aria-expanded="false">Services and Tools</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="/services.html">Services and Tools</a></li>
<li><a class="dropdown-item" href="/machines.html">Machines and Fingerprints</a></li>
<li><a class="dropdown-item" href="https://blocky.apache.org/">Blocky</a></li>
<li><a class="dropdown-item" href="https://app.datadoghq.com/account/login?next=%2Finfrastructure">DataDog</a></li>
<li><a class="dropdown-item" href="https://whimsy.apache.org/roster/committer/" target="_blank">Committer Search</a></li>
</ul>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown" aria-expanded="false">Documentation</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="/doc.html">Contribute</a></li>
<li><a class="dropdown-item" href="/infra-volunteer.html">Volunteer with Infra</a></li>
<li><a class="dropdown-item" href="/how-to-mirror.html">Become an ASF download mirror</a></li>
<li><a class="dropdown-item" href="/hosting-external-agent.html">Host a Jenkins or Buildbot agent</a></li>
</ul>
</li>
<li class="nav-item">
<a class="nav-link" href="/stats.html">Status</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact.html">Contact Us</a>
</li>
</ul>
</div>
</div>
</nav><!-- breadcrumbs -->
<div class="card" style="height: 34px;">
<nav aria-label="breadcrumb" style="padding-left: 12px; padding-top: 4px;">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Home</a></li>
<li class="breadcrumb-item active"><a href="/blog/improving_our_subversion_services.html">
Improving our Subversion Services </a></li>
<li class="breadcrumb-item active">(<a href="https://github.com/apache/infrastructure-website/tree/master/content/blog/improving_our_subversion_services.md">edit</a>)</li>
</ol>
</nav>
</div>
<!-- page contents -->
<div id="contents">
<div class="bg-white p-5 rounded">
<div class="col-sm-8 mx-auto">
<h1>
Improving our Subversion Services
</h1>
<p>Posted on: 2009-04-02 20:47:41+00:00</p>
<p>This week the ASF Infrastructure Team deployed one of the first major changes to how <a href="http://svn.apache.org/">svn.apache.org</a> works since it was launched, <a href="http://svn.apache.org/viewvc?view=rev&amp;revision=1">6 years ago</a>.<br/></p><p><a href="http://geo.bitnames.com/"></a>We now distribute Subversion traffic to our servers based on the geographic region of a client.</p><p>We are using <a href="http://geo.bitnames.com/">pgeodns</a>, the same software that powers <a href="http://search.cpan.org/">CPAN</a><a href="http://search.cpan.org/"> Search</a> and the <a href="http://www.pool.ntp.org/">NTP Pool</a>.&nbsp; With pgeodns we can give out different DNS entries to clients, depending on where they are connecting from.&nbsp; It isn't an exact science, but for most clients it is good enough to find the closer Subversion Server.<br/></p><p>If you are connecting from Europe, your client will connect to Harmonia.&nbsp; <a href="http://www.apache.org/dev/machines.html#harmonia">Harmonia</a> is a Sun x4150 running FreeBSD 7.0, using ZFS raid2z over&nbsp; 6 disks, hosted in Amsterdam at <a href="http://www.surfnet.nl/en/">SURFnet</a>.<br/></p><p>Users in North America are directed to Eris, our traditional Subversion Master Server.&nbsp; <a href="http://www.apache.org/dev/machines.html#eris">Eris</a> is a Dell 2950 also running FreeBSD 7.0, using ZFS raid2z over 4 disks, hosted in Corvallis, Oregon at <a href="http://osuosl.org">OSUOSL</a>.<br/></p><p>Using <a href="http://svnbook.red-bean.com/nightly/en/svn.ref.svnsync.html">svnsync</a> as described in <a href="https://blogs.apache.org/infra/entry/subversion_on_the_fly_replication">Norman's ApacheCon EU 2009 Talk</a>, we replicate all commits to the master to the slave in real time.&nbsp; If a commit is made to the slave, we proxy the commit to the master.</p><p>Read operations are handled on the nearest mirror, and are much faster for everything from the initial checking out to running an update due to the decreased latency.<br/></p><p>While this change should improve the experience significantly, we have some other changes coming up soon for svn.apache.org:<br/></p><ul><li>Upgrade to <a href="http://subversion.tigris.org/svn_1.6_releasenotes.html">Subversion 1.6</a>: Representation Sharing, inode packing, and memcached support should help make our SVN servers even faster.</li><li>Upgrade both Eris and Harmonia to FreeBSD 7.2-STABLE: The ZFS filesystem is experimental in FreeBSD 7, and there are many stability and performance enhancements available in newer versions.<br/></li><li>Adding more Geographic Mirrors: Once we are comfortable with the current setup, we would like to expand to another mirror location, hopefully in Australia or Asia.&nbsp;</li></ul><br/>
</div>
</div>
</div>
<!-- footer -->
<div class="row">
<div class="large-12 medium-12 columns">
<p style="font-style: italic; font-size: 0.8rem; text-align: center;">
Copyright 2024, <a href="https://www.apache.org/">The Apache Software Foundation</a>, Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.<br/>
Apache&reg; and the Apache feather logo are trademarks of The Apache Software Foundation...
</p>
</div>
</div>
<script type="application/ecmascript" src="/js/bootstrap.bundle.min.js" integrity="sha384-OERcA2EqjJCMA+/3y+gxIOqMEjwtxJY7qPCqsdltbNJuaOe923+mo//f6V8Qbsw3"></script> </main>
</body>
</html>