The strategy Rapleaf uses for purposes like this is to run multiple servers.
The client is aware of all the possible servers, but usually only connects
to one. When a connection becomes stale, you reconnect to another server.
Then, to make your deploys less painful, you just deploy one server at a
time.

On Mon, Jan 24, 2011 at 1:33 AM, Phillip B Oldham
<[email protected]>wrote:

> We have a number of Python & Java thrift services which we are
> manually deploying on a regular basis; usually early in the AM while
> it's "quiet" since deployment causes service interruption.
>
> We'd like to move to continuous deployment, so that when our commits
> successfully pass all the tests on our Hudson/Jenkins CI server
> something (Hudson/Jenkins, Puppet, custom scripts) will deploy the
> services without human intervention. The problem is that, in this
> scenario, the services may be deployed multiple times a day. Since
> each deployment causes service interruption we've held back.
>
> So, my question is: how would one avoid service interruption during
> deployment? Is there a common tool/strategy for such tasks?
>
> --
> Phillip B Oldham
> [email protected]
> +44 (0) 7525 01 09 01
>

Reply via email to