ઝીરો-ડાઉનટાઈમ ડિપ્લોયમેન્ટ એટલે નવા વર્ઝન રીલીઝ કરવું કોઈ પણ વ્યવધાન વિના — એપ્લિકેશન સમગ્ર ડિપ્લોયમેન્ટ દરમિયાન ઉપલબ્ધ રહે છે. તે હાંસલ કરવા માટે સતર્ક ડિપ્લોયમેન્ટ સ્ટ્રેટેજીઓ, બેકવર્ડ-કમ્પેટિબલ ફેરફારો, હેલ્થ ચેક્સ, અને ઇન-ફ્લાઈટ રિક્વેસ્ટ્સનું સુશીલ હેન્ડલિંગ જરૂરી છે.
ઝીરો-ડાઉનટાઈમ શું આવશ્યક છે
GOAL: deploy a new version with NO user-facing downtime (always-available service):
→ never take the whole service offline to deploy
→ always have healthy instances serving while updating others
→ handle in-flight requests gracefully (don't drop them mid-request)
→ Combine several techniques (below).
મુખ્ય તકનીકો
✓ DEPLOYMENT STRATEGY — rolling, blue-green, or canary (never all-at-once downtime):
→ rolling: update instances gradually (others keep serving)
→ blue-green: switch traffic to the new environment instantly
✓ LOAD BALANCER + HEALTH CHECKS → route traffic only to healthy/ready instances;
new instances join only when READY (readiness checks)
✓ GRACEFUL SHUTDOWN → draining: stop sending new requests to an instance, let it FINISH
in-flight requests, THEN stop it (handle SIGTERM) → no dropped requests
✓ BACKWARD-COMPATIBLE changes → old and new versions coexist during the rollout
(API and DATABASE compatibility — expand-contract migrations)
