High-availability inn?

Russ Allbery rra at stanford.edu
Wed Sep 14 18:50:35 UTC 2005


Lars Magne Ingebrigtsen <larsi at gnus.org> writes:

> So today's random thought is -- would it be possible to run an
> instance of inn that would just accept whatever it was fed?  That is,
> instead of (I've cheated a bit here and looked in the source code)
> having ARTassignnumbers() do it's normal thing, could it just accept
> the Xref header assigned by the master news server?

> If that were possible, then all the articles on the standby server
> would have the same article numbers as the master server.  I could
> feed the standby server these messages at leisure, either with an
> ad-hoc thing or via a regular news feed.  Then, when the time comes,
> I'd just, well, switch the servers.  Nobody would know the difference.

Yup, that's exactly what Xref slaving is for.  Note that the two systems
have to have identical active files, and you'll need to fiddle with
artcutoff to be sure that the server doesn't reject the really old
messages.

> (The other thing this could be used for is that people could set up
> "replicated" news servers, and users could connect to the nearest
> server for greater speed, and could switch servers at will without
> having to do anything but alter the server name.  news.us.gmane.org,
> news.au.gmane.org...)

Yeah, people have been doing this with Xref slaving for quite a while.
There are some fiddly bits (you want the feeds to be as near real-time as
possible, since otherwise people who move between servers will see odd
article holes, and you also generally want to feed only one stream of
articles to the slaves, since otherwise articles may arrive out of order
and create holes that confuse clients), but it by and large works okay.

-- 
Russ Allbery (rra at stanford.edu)             <http://www.eyrie.org/~eagle/>

    Please send questions to the list rather than mailing me directly.
     <http://www.eyrie.org/~eagle/faqs/questions.html> explains why.


More information about the inn-workers mailing list