0

i have a spring boot application with too many users, and there are many incoming requests to my application, what should i do for deploying a new feature to the application without losing incoming user request and actually interrupting the application’s availability to clients ? i wanna know about best practices for my issue.

Moya
  • 21
  • 2
  • You have to add redundancy and a load balancer. Does your application uses Session Scope? – Simon Martinelli Apr 14 '20 at 06:13
  • There are multiple deployment strategies that could be employed. For your specific use case you may use something like blue green deployment strategies. Again as @SimonMartinelli mentioned you could have Load Balancer effectively here. Follow-up question :- Does your application needs to respond to request in real time or non-real time. – Vipin Sharma Apr 14 '20 at 06:24
  • thanks you so much for keyword blue green. i'm going to study that in details. – Moya Apr 14 '20 at 07:49

1 Answers1

0

Please note deployment strategies depends on the nature of your application.

For cases like you mentioned Blue/Green or Canary would be useful.

Various ways Deployment strategies classified, below is one such categorization.

  • Recreate: Version A is terminated then version B is rolled out.

  • Ramped (also known as rolling-update or incremental): Version B is slowly rolled out and replacing version A.

  • Blue/Green: Version B is released alongside version A, then the traffic is switched to version B.

  • Canary: Version B is released to a subset of users, then proceed to a full rollout. A/B testing: Version B is released to a subset of users under specific condition.

  • Shadow: Version B receives real-world traffic alongside version A and doesn’t impact the response.

reference link - https://thenewstack.io/deployment-strategies/

Vipin Sharma
  • 107
  • 1
  • 8