<?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>Sonatype Blog &#187; mirrors</title>
	<atom:link href="http://www.sonatype.com/people/tag/mirrors/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sonatype.com/people</link>
	<description>Sonatype is transforming software development with tools, information and services that enable organizations to build better software, faster, using open-source components.</description>
	<lastBuildDate>Wed, 23 May 2012 14:24:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>New Feature in Nexus 1.3: Mirror Support</title>
		<link>http://www.sonatype.com/people/2009/03/new-feature-in-nexus-13-mirror-support/</link>
		<comments>http://www.sonatype.com/people/2009/03/new-feature-in-nexus-13-mirror-support/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 13:00:01 +0000</pubDate>
		<dc:creator>Brian Fox</dc:creator>
				<category><![CDATA[Maven]]></category>
		<category><![CDATA[Nexus]]></category>
		<category><![CDATA[central]]></category>
		<category><![CDATA[mirrors]]></category>
		<category><![CDATA[repository]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=1712</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2009/03/new-feature-in-nexus-13-mirror-support/' addthis:title='New Feature in Nexus 1.3: Mirror Support '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>There are many mirrors of the Central repository out there, but they are mostly under-utilized. I believe this occurs for two reasons: Users don&#8217;t know they exist &#8211; it&#8217;s not easy to find a good source for these URLs and locations. Users don&#8217;t have confidence in the mirrors &#8211; They don&#8217;t know how frequently they [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2009/03/new-feature-in-nexus-13-mirror-support/' addthis:title='New Feature in Nexus 1.3: Mirror Support '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><img src="http://www.sonatype.com/people/wp-content/uploads/2008/12/nx-big_large1.png" alt="nx-big_large1" title="nx-big_large1" width="100" height="100" class="alignright size-full wp-image-1323" /></p>

<p>There are many mirrors of the Central repository out there, but they are mostly under-utilized. I believe this occurs for two reasons:</p>

<ol>
  <li><b>Users don&#8217;t know they exist</b> &#8211; it&#8217;s not easy to find a good source for these URLs and locations.</li>
  <li><b>Users don&#8217;t have confidence in the mirrors</b> &#8211; They don&#8217;t know how frequently they are updated, and don&#8217;t have an easy way to validate they are the same files that exist on Central.</li>
</ol>

<p>In <a href="http://www.sonatype.com/products/nexus">Nexus 1.3</a>, we have introduced new functionality to solve both of those problems.</p>

<p><span id="more-1712"></span></p>

<h3>Nexus and Repository Mirrors</h3>

<p>For each proxy repository, Nexus is now able to be configured with an ordered list of URLs to use as mirrors of the remote repository. Currently, only one lookup strategy is provided, but this is extensible and additional strategies will be provided in later versions.</p>

<p>In the current strategy, when Nexus attempts to retrieve an artifact from this repository, it will use the first mirror that is available and not currently blacklisted. This mirror will be used to retrieve the artifacts only, and the hashes and signatures will be retrieved in parallel from the &#8220;Canonical Repository&#8221; (the master instance &#8212; <a href="http://repo1.maven.org/maven2">http://repo1.maven.org/maven2</a> for example is the Canonical Central repository URL). If the artifact does not match the hashes or is not available on the mirror, then the system will attempt to resolve the artifacts directly on the Canonical Repository URL. If a repository mirror is not available, it is blacklisted for 30 minutes and doesn&#8217;t participate in lookups for that period of time.</p>

<p>The effect of this strategy is that even if you list 4 mirrors of a repository, only the first one will be used (provided it isn&#8217;t currently blacklisted). The reason we did this is to reduce the impact on the lookup time (we short-circuit to the Canonical URL instead of crawling all the mirrors for a file that might never be there), and to keep the initial code simple and well tested.</p>

<p>We believe the addition of this simple functionality will have a dramatic impact on throughput, particularly in areas like Europe where there is a mirror nearby, without being subject to any outage at the mirror. It also means that even if the mirror closest to you is slightly out of date, it will be transparent as the latest data is pulled still from the Canonical repo.</p>

<p>The configuration of the mirrors is able to leverage the newly defined repository metadata, which allows a repository to declare known mirrors of itself, along with details about the contents (snapshots vs releases and information about aggregated repositories). There is a new mirror tab in the the repository configuration panel. When you open this, you are able to add and reorder the mirror urls you would like to use. If the repository is publishing the metadata, then the Nexus UI will provide you with this list for you to choose from.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2009/03/new-feature-in-nexus-13-mirror-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

