On Aug 9, 2013, at 19:00, Roman Naumenko wrote: > Ryan Schmidt said the following, on 09-08-13 7:12 PM: >> You can configure any number of read-only slaves which maintain copies of >> the master repository with a very slight delay. The mirroring and keeping in >> sync would be accomplished using svnsync. To access the repositories, users >> would use the hostname of a mirror near to them. For read operations, they >> would occur on the mirror and therefore be faster than accessing the >> farther-away master. For write operations, you configure the mirror to proxy >> those requests back to the master. (Search for "write-through proxy" for >> more on this.) In this way the users only need to know the address of their >> closest mirror; they do not need to know which is the master or to know its >> address. > I wanted to have universal URL, which might resolve to different IP based on > location - for performance.
I'm not familiar with how to set that up at the DNS level but if you are then go for it. > But more important, I'd like to have a few nodes handling writes. Ah yes. Well then that's different. You must have one heck of a large svn installation for that to be a bottleneck. >>> Of course, it would be ideal if subversion nodes could just share a >>> storage, so any sort of requests from a load balancer can processed by >>> any node without need to replicate changes over network. >> If your storage is robust (i.e. a cluster filesystem, such as Xsan) and you >> want to run multiple Subversion servers that each have access to the same >> repositories on the same storage, then yes, you can do that instead. > The storage is robust enough - NetApp or possibly SAN with all enterprise > bells and whistles. It would need to be not just a SAN but a SAN with a cluster filesystem, based on previous conversations (see below). > Ok, so if multiple nodes are accessing the same mount point with repos data, > will they be able to handle writes from multiple clients correctly? Thinking > out loud: yes, they should - since it's no difference for a repository if > multiple clients commiting over same server or few distributed nodes. Or is > it different when the same process handles all requests? I have not set it up myself, but I participated in discussions about it on this list some years ago: http://svn.haxx.se/users/archive-2006-10/0195.shtml http://svn.haxx.se/users/archive-2007-05/0214.shtml You may want to read those threads completely and carefully to get all the nuances. And of course information may have changed since then.