This is exactly what I'm after. Thanks to both of you. On 3 December 2015 at 12:54, Tauzell, Dave <dave.tauz...@surescripts.com> wrote:
> If you cannot use a tool like flyway you can do it by hand, too. The key > is that all database changes need to be backwards compatible. For example: > > So, if you want to drop a column: > 1. Deploy new version of app that doesn't require column X > 2. Shutdown version which does > 3. drop column X > > If you want to rename a column: > 1. Deploy new version of app that writes data to old column name + new name > 2. shutdown old version > 3. drop old column > > We generally test out our old version of an app running against the new > database schema to make sure this process will work. > > -Dave > > -----Original Message----- > From: jieryn [mailto:jie...@gmail.com] > Sent: Thursday, December 03, 2015 1:32 PM > To: Tomcat Users List > Subject: Re: Zero downtime deployments > > Use http://flywaydb.org/ to perform database migrations. You will need at > least 3 versions in order to perform an incompatible database change. v1 is > existing behavior, v2 is a shim that bridges v1 and v3, and then v3 cleans > up the shim and removes all the unnecessary hacks. > When you have v1 rolled out against N images, then you can start rolling > out compat shim v2 which adds some temporary work for the db and coexists, > then when all instances are at v2 you can move to v3 which uses all the new > stuff. > > I haven't found anything better or more efficient than the 2-step > deployment with live code. > > On Thu, Dec 3, 2015 at 2:21 PM, Kevin Hale Boyes <kcbo...@gmail.com> > wrote: > > Thanks for this link to the presentation. > > How do you all deal with some of the other dependencies that the web > > application has? > > > > For example, if v2 of my application needs new database columns or > > worse, a change to an existing column how can I have v1 and v2 running > > at the same time? We use Oracle as our database though the problem > > exists for many database servers. > > > > Thanks, > > Kevin. > > > > On 3 December 2015 at 01:31, Neill Lima <neill.l...@visual-meta.com> > wrote: > > > >> Hello Jason, > >> > >> This approach of using httpd in front of 2+ Tomcats via AJP works > >> well in my company. There is a bit of config necessary at httpd level > >> so httpd is aware of all the Tomcats and also Tomcat config needs to > >> be set to listen to AJP port instead of default port but it is not > rocket science. > >> > >> This facilitates the deployment of nodes sequentially with no > >> downtime. Of course, there is a shared session server to take care > >> the sessions are not lost when Tomcats flip up and down. > >> > >> Reply in pvt if you need help setting up this. > >> > >> Thanks, > >> > >> Neill > >> > >> On Thu, Dec 3, 2015 at 12:08 AM, Jason Britton <jbritto...@gmail.com> > >> wrote: > >> > >> > Thank you Christopher, reading now and we'll see if I can swing the > >> > conference :) > >> > > >> > On Wed, Dec 2, 2015 at 4:00 PM, Christopher Schultz < > >> > ch...@christopherschultz.net> wrote: > >> > > >> > > Jason, > >> > > > >> > > On 12/2/15 4:07 PM, Jason Britton wrote: > >> > > > I was looking for information for how those on the list achieve > >> > > > zero downtime deployments of their tomcat hosted web > >> > > > applications. I > >> > imagine > >> > > > this can be achieved in a variety of ways, but would love to > >> > > > hear > >> what > >> > > > works for you. In our current environment we front multiple > >> > > > tomcat instances with apache httpd, each tomcat instance > >> > > > hosting one or more unique web apps. In order to support this > >> > > > effort we do have the > >> > > resources > >> > > > where we could spin up multiple tomcat instances to serve > >> > > > requests > >> for > >> > a > >> > > > single application. I know there is mod_proxy_balancer > >> > > > available for httpd, and I understand starting with tomcat 7 > >> > > > there is support for parallel deployment of versioned wars, and > >> > > > tomcat also supports clustering. I'm just unsure of what > >> > > > approach I should start digging > >> > into > >> > > > and would very much appreciate any of your experiences. The > >> > > > servers > >> > > we'll > >> > > > be rolling out will be using the latest versions of tomcat 8 > >> > > > and > >> apache > >> > > > httpd 2.4. Thanks for any insights! > >> > > > >> > > Check this out: > >> > > > >> > > > >> > > >> http://people.apache.org/~schultz/ApacheCon%20NA%202015/Load-balancin > >> g%20Tomcat%20with%20mod_jk.pdf > >> > > > >> > > Start on slide/page 41. > >> > > > >> > > Then come to ApacheCon NA 2016 and discuss it! > >> > > > >> > > -chris > >> > > > >> > > ----------------------------------------------------------------- > >> > > ---- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > >> > > For additional commands, e-mail: users-h...@tomcat.apache.org > >> > > > >> > > > >> > > >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > This e-mail and any files transmitted with it are confidential, may > contain sensitive information, and are intended solely for the use of the > individual or entity to whom they are addressed. If you have received this > e-mail in error, please notify the sender by reply e-mail immediately and > destroy all copies of the e-mail and any attachments. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > >