Born2Achieve on Thu, 08 Jan 2015 23:04:59
Hi, I built software as website using VS2013 asp.net with sqlserver 2008 R2 and hosted on production server. Also, my customers are using the software for last one year. I usually deploy the new feature build in every month after 7 pm on last Friday of every month. I am planning to do the deployment during office hours(b/w 8 to 6) which should not impact the customers. I wanted to do the deployment and parallely my customers can use the website . I can create separate VD on IIS to have my latest code deployed and tested then i will point it to it when testing is done. Hope no issue will come on Application server side. But how do i maintain my database
because i should not execute the schema changes and other DDl and DML changed on the Production database as it is live and used by the customers.
What is the best way to achieve this scenario? How do i maintain the transaction?
Do i need to have another database instance and once the deployment over should i need to sink? I don't have any idea as of now how to proceed with this. Any suggestions please how to implement this. how do i achieve this concept. please suggest me
RAJU RG on Fri, 09 Jan 2015 00:29:30
Best way is whenever you do any changes in production sql servers ( Patching, code changes in database, and any other changes that affects customers and database availability ) you have to make sure and execute it in non business hours. before doing this you have to test it in Test environment... its not a best practice to have seprate VD or anything for doing changes each and everytime...
Born2Achieve on Fri, 09 Jan 2015 02:05:18
Thanks for your reply and there is a concept called Zero down time deployment. Practically i am trying to achieve that. It would be great if i get any help steps to achieve that.
RAJU RG on Fri, 09 Jan 2015 03:17:19
It may be works for application level changes but not for database level changes...
Born2Achieve on Fri, 09 Jan 2015 13:52:45
many companies doing this, but i don't have any idea how they are doing.
Uri Dimant on Sun, 11 Jan 2015 07:53:11
What features are you talking about you want to deploy? I think you need to use source safe to keep the latest version.
>>>>But how do i maintain my database
If there is no schema changes not ddl/dml operation why are you worried? How the database is affected?
Born2Achieve on Mon, 12 Jan 2015 12:08:14
thanks for your reply and i am talking about Regular production deployment as we use to add new features every few weeks. I have two application server and one database server.
I am aware of doing blue-green deployment to take care of my app server. But, no idea how do i maintain my db server as definitely schema changes will take place. how can i achieve zero downtime deployment there? If i have two instance of db database and if i tackle to point the instance based on how do i switch the app server will help me? my worry is when one instance is using the live data how to i make those live data to another instance? ie how do i sync one db instance with another for consistency. any suggestion please