Вам нужно объявить переменные как члены класса, вне конструктора. Другими словами, объявляйте c и d вне конструктора следующим образом:
int c;
int d;
public Constructor (int a, int b) {
c = a;
d = b;
}
Это безопасно для файлов JS и ресурсов, если на вашем S3 есть все файлы для всего развертывания. Однако вы должны убедиться, что все файлы находятся внутри S3, прежде чем произойдет переключение.
Единственные проблемы - это ваш API, сервис, бизнес-логика. Во время переключения нельзя развертывать конфликтующие версии API.
example.com/v1.0/data
, возвращает массив example.com/v1.0/data
, возвращает объект Во время переключения ваш код Грина может вызовите код Blue, и из-за разной структуры ответа ваш код Green Vue не готов обработать новую структуру данных.
Вы можете уменьшить это, правильно обновив свои версии API.
Имеют несколько версий API example.com/v1.0/data
и example.com/v1.1/data
. Во время развертывания ваш Blue / Green будет перенаправлен на соответствующие API. Это довольно утомительно.
Я кратко говорил об этом с помощью обновлений AWS Rolling Updates: AWS Nuxt Zero Downtime